实现连接池技术的样例
1. 在tomcat的安装文件夹下conf文件夹下的context.xml文件加入例如以下代码:
<Resource name="jdbc/course" auth="Container"
//这个name是非常关键的。由于web.xml文件里也须要用到,在jsp中连接数据源也须要用到。
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/test"
username="root"
password="root"
maxIdle="5"
maxWait="5000"
maxActive="10"/></context>
2. 在lib目录下加入连接数据库的jar包。
3. 在web project项目course配置web.xml,在Web-app之间加入例如以下代码:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/course</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
4. 在jsp中写连接代码:
Context initctx =new InitialContext();
Context envctx = (Context)initctx.lookup("java:comp/env/");
DataSource ds = (DataSource)envctx.lookup("jdbc/course");
Connection conn = ds.getConnection();
注意事项:
假设在Java类里面写连接数据库的语句。不能执行。由于连接池是在tomcatserver启动的时候,将配置信息读入的。直接执行Java类的话。tomcatserver都没有启动。都没有配置信息,肯定执行不了,能够通过配置文件或者执行的时候通过Java -D @@@@(类名)这样的形式来赋值;jsp的话通过容器能够找到相应的数据源。Java类通过Main函数找不到。