Java连接数据库的几种方法

*说明

  1.以MySQL数据库为例

   2.分为四个步骤:

    建立数据库连接,

    向数据库中提交sql

    处理数据库返回的结果

    关闭数据库连接

一:JDBC

1.建立数据库连接

只需要两步,注册数据库的驱动程序,然后创建数据库连接

示例代码:

   

  String url="jdbc:mysql://localhost:3306/test";

                   String Driver="com.mysql.jdbc.Driver";

                   String username="root";

                   String password="123456";

                   Class.forName(Driver);

                   Connection conn=DriverManager.getConnection(url,username,password);

方法一

   

 String url="jdbc:mysql://localhost:3306/test";

                   String username="root";

                   String password="123456";

                   new com.mysql.jdbc.Driver();

                   Connection conn=DriverManager.getConnection(url,username,password);

方法二

首先通过java.lang.Class类的forName()静态方法动态加载MySQL驱动程序的类,这个类会自动在DriverManager中进行注册,然后通过DriverManager获得Connection类型的对象

2.通过数据库连接池,效率高

原理就是通过修改Tomcat服务器conf目录下的context.xml文件来进行配置的

配置的代码:

  

 <Context reloadable="true">

    <!-- Default set of monitored resources -->

    <WatchedResource>WEB-INF/web.xml</WatchedResource>

    <Resource name="jdbc/mysql" auto="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="root" password="123456" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test"/>

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->

    <!--

    <Manager pathname="" />

    -->

    <!-- Uncomment this to enable Comet connection tacking (provides events

         on session expiration as well as webapp lifecycle) -->

    <!--

    <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />

    -->

</Context>

context.xml

  通过数据源对象获取连接池中的数据库连接对象

  

Context context=new InitialContext();

DataSource ds=(DataSource) context.lookup("java:/comp/env/jdbc/mysql");

Connection conn=ds.getConnection();

3.其他步骤在后面讲

二.以后补充

最新文章

  1. [APUE]文件和目录(上)
  2. appium 1.6.3+Xcode运 For Mac
  3. 【NodeJS线程】Boss和他的职员们
  4. css学习归纳总结(二) 转
  5. [转载 ]POJ 1273 最大流模板
  6. [四校联考P3] 区间颜色众数 (主席树)
  7. Swift语言—常量、变量、类型赋值
  8. python学习之——计算文件行数
  9. JavaScript-闭包注意事项
  10. Hibernate3回顾-4-事务和并发管理
  11. POJ 3164 Command Network 最小树形图模板
  12. 认识OD的两种断点
  13. yii2源码学习笔记(十八)
  14. 【转】HashMap和HashSet的区别
  15. Unity 之圆环算法
  16. 图片热区——axure线框图部件库介绍
  17. mysql配置主从数据库
  18. 一起来学linux:网络命令
  19. BZOJ 4259 残缺的字符串
  20. git push -f

热门文章

  1. why microsoft named their cloud service Azure?
  2. CENTOS7常用的基础命令集合(一)
  3. [转]CSS clear both清除浮动
  4. C++的学习心得
  5. Dubbo 源码分析 - 集群容错之 Router
  6. Struts2新漏洞S2-046在线实验环境全球首发
  7. 音视频编解码——LAME
  8. [Postman]发出SOAP请求(18)
  9. [Postman]Postman导航(3)
  10. mysql数据统计技巧备忘录