标签:
在resin 的conf 文件下有resin.xml 我们在这里能够配置数据源以及配置项目
一、配置多个数据源,多个项目共享这些数据源。也就是这些数据源配置在<host> </host> 之内,而在<web-app> </web-app> 之外,这样全部的这些项目都能訪问这些数据源
实例:
<host id="localhost" root-directory="D:\Javaee\project\test\">
<database>
<jndi-name>jdbc/test</jndi-name>
<driver type="com.mysql.jdbc.Driver">
<url>jdbc:mysql://localhost:3306/user</url>
<user>root</user>
<password>admin</password>
</driver>
</database>
<database>
<jndi-name>jdbc/test2</jndi-name>
<driver type="com.mysql.jdbc.Driver">
<url>jdbc:mysql://localhost:3306/user2</url>
<user>root</user>
<password>admin</password>
</driver>
</database>
<!-- 这里数据源配置到了host。所以仅仅要是这个host中的web-app都是能够使用这些数据源的 -->
<web-app id="/test" root-directory="test\demo"/>
<web-app id="/testresin" root-directory="webapp"/>
</host>
二、一个项目配置多个数据源。也就是将数据源的配置放在<web-app> 之内。这个数据源仅仅能被这个项目使用。其它的项目不能使用这个数据源
实例:
<host id="localhost" root-directory="D:\Javaee\project\test\"><!-- 这里将多个数据源配置在了web-app 中,所以也仅仅有这个web-app 能使用这些数据源-->
<!--假设在配置其它的web-app 也还是不能使用这些数据源的 -->
</host>
三、从两个数据源获取数据库连接
实例:
DataSource ds2= null;
DataSource ds=null;
Context initContext = new InitialContext();
Context envContext = (Context)initContext.lookup("java:/comp/env");
InitialContext context=new InitialContext();
ds = (DataSource)envContext.lookup("jdbc/test");
ds2=(DataSource)envContext.lookup("jdbc/test2");
Connection con= ds.getConnection();
Connection con2= ds2.getConnection();
注意导入类: javax.sql.DataSource。javax.naming.*,java.sql.*
标签:
原文地址:http://www.cnblogs.com/yxwkf/p/5326461.html