resin 4.0数据源的配置

 在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 id="/test" root-directory="test\demo">
         <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.*



posted @ 2016-03-27 18:55  yxwkaifa  阅读(975)  评论(0编辑  收藏  举报