Java应用程序连接数据库

Java应用程序通过JDBC驱动器访问数据库,与不同的JDBC驱动器通信,归功于java.sql.DriverManager类,它运用桥梁设计模式:

Java应用程序连接数据库_第1张图片
《Tomcat与javaweb开发技术详解》

普通的连接访问数据库的方法,效率和性能比较低,于是有了JDBC2.0。JDBC2.0提供了javax.sql.DataSource接口,好处是:

1、不必编写连接数据库的代码;

2、事先建立多个连接池,大大的提高效率;

##  如何实现??(依赖于Java的JNDI技术)

DataSource对象通常由Servlet容器提供,Java程序无需创建,只要直接使用Servlet提供的DataSource对象即可。

JNDI是一种将对象和名字绑定的技术,对象工厂负责产出对象,外部程序可以通过名字来过得某个对象的引用。

Java应用程序连接数据库_第2张图片
《Tomcat与javaweb开发技术详解》

如图,主要是javax.naming.Context接口,其中有两个方法,bind(name, object)和lookup(name),后者返回与指定名字绑定的对象。

Tomcat 把DataSource作为一种可配置的JNDI资源来处理。

——————

## 配置数据源

为web应用配置数据源涉及context.xml(加入定义数据源的元素)和web.xml文件(加入元素)。

配置信息:

Java应用程序连接数据库_第3张图片
《Tomcat与javaweb开发技术详解》

在程序中使用:

Java应用程序连接数据库_第4张图片
《Tomcat与javaweb开发技术详解》

如图,从数据源获取到连接,后面的执行sql语句就和普通的访问数据库的方法完全一样啦!!

注意: 由于数据源由Servlet容器创建并维护,因此必须把JDBC驱动器的jar包复制到Tomcat的lib目录下,从而确保Servlet容器能访问到驱动器类库。(不能再放到应用的WEB-INF/lib目录下了)。

你可能感兴趣的:(Java应用程序连接数据库)