前天买了本《精通 Tomcat》,确实学到不少东西,今天学会了怎么配置全局 JNDI 数据源:
1、首先在 %CATALINA_HOME%/conf/server.xml 里的 GlobalNamingResources 元素当中添加数据源配置:
<Resource name="jdbc/EmployeeDB" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" username="chinacreator" password="chinacreator" url="jdbc:oracle:thin:@172.16.33.16:1521:orcl"/>
2、然后在站点根目录下面创建 META-INF 目录,META-INF 下面创建 context.xml ,内容如下:
<Context> <WatchedResource>WEB-INF/web.xml</WatchedResource> <ResourceLink global="jdbc/EmployeeDB" name="jdbc/EmployeeDB" type="javax.sql.DataSource"/> </Context>
3、在站点 web.xml 中添加:
<resource-ref> <res-ref-name>jdbc/EmployeeDB</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
注意 context.xml 中的两个“jdbc/EmployeeDB”,第一个对应上面的,第二个对应下面的。
然后就可以在 java 中写:
Context c = new InitialContext();
DataSource ds = (DataSource)c.lookup("java:comp/env/jdbc/EmployeeDB");