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类里面写连接数据库的语句,不能运行,因为连接池是在tomcat服务器启动的时候,将配置信息读入的,直接运行Java类的话,tomcat服务器都没有启动,都没有配置信息,肯定运行不了,可以通过配置文件或者运行的时候通过Java -D @@@@(类名)这种形式来赋值;jsp的话通过容器可以找到对应的数据源,Java类通过Main函数找不到。