您的位置:首页 > 数据库 > Oracle

tomcat下oracle多数据源多项目配置(亲测可行)

2017-12-21 11:44 471 查看
一.  项目配置修改:

1.  文件位置:项目名/webapp/WEB-INF/application-context.xml,修改数据源名称

项目A:

<!-- 数据访问,使用jdbc/topcdb做为数据源 -->

    <jee:jndi-lookup id="datasource" jndi-name="jdbc/topcdb"/>

项目B:

 <!-- 数据访问,使用jdbc/fangyundb做为数据源 -->

    <jee:jndi-lookup id="datasource" jndi-name="jdbc/fangyundb"/>

2. 文件位置:项目名/webapp/WEB-INF/ web.xml,作如下修改

项目A:

<resource-ref>

        <description>数据库连接,需要在服务器中配置</description>

        <res-ref-name>jdbc/topcdb</res-ref-name>

        <res-type>javax.sql.DataSource</res-type>

        <res-auth>Container</res-auth>

    </resource-ref>

<context-param>

        <param-name>webAppRootKey</param-name>

        <param-value>cfc.root</param-value>

 </context-param>
项目B:

<resource-ref>

        <description>数据库连接,需要在服务器中配置</description>

        <res-ref-name>jdbc/fangyundb</res-ref-name>

        <res-type>javax.sql.DataSource</res-type>

        <res-auth>Container</res-auth>

    </resource-ref>

<context-param>

        <param-name>webAppRootKey</param-name>

        <param-value>house.root</param-value>

 </context-param>

二.  tomcat配置修改

1. conf/context.xml添加数据源:

<Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver"

        maxActive="100" maxIdle="30" maxWait="10000"

        name="jdbc/topcdb" password="passwd1"

        type="javax.sql.DataSource"

        url="jdbc:oracle:thin:@127.0.0.1:1521:orcl" username="username1"/>

<Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver"

        maxActive="100" maxIdle="30" maxWait="10000"

        name="jdbc/fangyundb" password="passwd"

        type="javax.sql.DataSource"

        url="jdbc:oracle:thin:@127.0.0.1:1521:orcl" username="username"/>

</Context>

2. conf/server.xml作如下修改(也可不改,主要是为了不同项目通过不同域名访问):

<Host name="localhost"  appBase="webcfc"

            unpackWARs="true" autoDeploy="true"

            xmlValidation="false" xmlNamespaceAware="false">

        <Context path="" docBase="../webapps/cfc" reloadable="true" />

</Host>

<Host name="www.house.cn"  appBase="webfangyun"

            unpackWARs="true" autoDeploy="true"

            xmlValidation="false" xmlNamespaceAware="false">

        <Context path="" docBase="../webapps/fangyun" reloadable="true" />

</Host>

注:war包一律放在webapps下面

三.  eclipse可以对不同项目输出的包名进行修改,(本人认为若用eclipse启动单数据源单项目可以不配置此项,打包到tomcat上部署亦可以不修改此项)

项目B:

1.   .project文件

<?xml version="1.0" encoding="UTF-8"?>

<projectDescription>

    <name>cfc_house</name>

    <comment></comment>

2.  .settings/org.eclipse.wst.common.component文件

<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">

    <wb-module deploy-name="cfc_house">

        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>

        <wb-resource deploy-path="/" source-path="/webapp"/>

        <property name="java-output-path" value="/cfc_house/build/classes"/>

        <property name="context-root" value="house"/>

    </wb-module>

</project-modules>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: