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函數找不到。