发布网友 发布时间:2022-05-01 09:11
共2个回答
懂视网 时间:2022-05-01 13:32
1> 注册驱动的问题.
DriverManager.registDriver(new Driver()); ==> 该种注册方式,在将来的开发中 不要使用.
使用如下方式:
Class.forName("com.mysql.jdbc.Driver");
2>为什么?
在驱动类的代码中,我们可以看到有一个静态代码块。 静态代码块中已经做了注册驱动的事情。 所以我们只需要加载
驱动类,就相当于调用了 registDriver 方法。
3>使用 Class.forName有什么好处?
* 如果调用registDriver 方法, 那么相当于创建了两个Driver对象,浪费资源.
* 使用forname的方式. 因为驱动类的名称是以字符串的形式填写,那么我们把该名称放到配置文件中,每次从配置文件中读取.
那么切换驱动类就非常方便. 也就意味着切换数据库方便.
----------------------------------------------------------------------------------------------------------------------
4.获得Connection的细节
DriverManager.getConnection("url","用户名","密码");
url 填写格式:
外层协议:内部协议://主机名称[ip地址]:端口号/库名?参数键1=参数值&参数键2=参数值
jdbc:mysql://localhost:3306/day15?useUnicode=true&characterEncoding=utf-8
或者
如果是指向本机且默认端口号没有修改,可以直接省去。如下:
jdbc:mysql:///day15?useUnicode=true&characterEncoding=utf-8
结合上面说的方便切换数据库.
我们在书写时,也可以把上面3个参数,写到配置文件中.
JDBC-DriverManager细节
标签:
热心网友 时间:2022-05-01 10:40
通常,程序打开一个Connection就可以,不必在程序中频繁地打开、关闭。。。。。。。。。。