大家好,又见面了,我是全栈君。
在resin 的conf 文件下有resin.xml 我们在这里能够配置数据源以及配置项目
一、配置多个数据源,多个项目共享这些数据源。也就是这些数据源配置在<host> </host> 之内,而在<web-app> </web-app> 之外,这样全部的这些项目都能訪问这些数据源
实例:
<host id=”localhost” root-directory=”D:Javaeeprojecttest”> <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=”testdemo”/> <web-app id=”/testresin” root-directory=”webapp”/> </host>
二、一个项目配置多个数据源。也就是将数据源的配置放在<web-app> 之内。这个数据源仅仅能被这个项目使用。其它的项目不能使用这个数据源
实例:
<host id=”localhost” root-directory=”D:Javaeeprojecttest”> <web-app id=”/test” root-directory=”testdemo”> <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> </web-app>
<!– 这里将多个数据源配置在了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.*
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/115559.html原文链接:https://javaforall.cn