通常在J2EE的开发中,需要用到在服务器上通过JNDI配置的Datasource,如最后的应用在Weblogic上运行,而在开发环境的本地机器中可能是Tomcat,这时候需要在Tomcat上配置一个Datasource,在网上看到很多人的解决办法都是改Tomcat运行环境的server.xml 或者context.xml,其实最简单的办法是在项目的META-INF目录里加入一个context.xml,这样就不用项目组的每个成员都需要改自己机器上的Tomcat配置了。如下图:

context的内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
	<Resource name="xxxDS" auth="Container" type="javax.sql.DataSource"
		maxActive="20" maxIdle="30" maxWait="10000" username="xx" password="xx"
		driverClassName="oracle.jdbc.OracleDriver"
		url="jdbc:oracle:thin:@147.151.240.xx:1521:orcl" />
</Context>	private void testJNDIDataSource(){
		try {
			InitialContext context = new InitialContext();
			javax.sql.DataSource ds = (javax.sql.DataSource) context.lookup ("java:/comp/env/xxxDS");
			System.out.println(ds);
			
		} catch (Exception e) {
			e.printStackTrace();
		};
	}<bean id="dataSource"    
    class="org.springframework.jndi.JndiObjectFactoryBean">    
    <property name="jndiName">    
        <value>xxxDS</value>    
    </property>
    <property name="defaultObject" ref="dataSource1"/>     
</bean>
    <bean id="dataSource1"
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@147.151.240.xx:1521:orcl" />
    <property name="username" value="xxx" />
    <property name="password" value="xxx" />
</bean><beans profile="weblogic">
	<bean id="dataSource"    
		class="org.springframework.jndi.JndiObjectFactoryBean">    
		<property name="jndiName">    
			<value>xxxDS</value>    
		</property>
		<property name="resourceRef" value="true"/>     
	</bean> 
</beans>
<beans profile="tomcat">
	<bean id="dataSource"
		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
		<property name="url" value="jdbc:oracle:thin:@147.151.240.89:1521:orcl" />
		<property name="username" value="but" />
		<property name="password" value="but" />
	</bean>
</beans><context-param>
    <param-name>spring.profiles.active</param-name>
    <param-value>tomcat</param-value>
</context-param> 
                   
                   
                   
                   
                            
 
                             本文介绍了一种在J2EE应用中实现不同环境下(如Tomcat和WebLogic)统一配置DataSource的方法,通过在项目中放置特定的context.xml文件简化了配置流程,并展示了如何利用Spring框架的不同配置文件来适应开发和生产环境。
本文介绍了一种在J2EE应用中实现不同环境下(如Tomcat和WebLogic)统一配置DataSource的方法,通过在项目中放置特定的context.xml文件简化了配置流程,并展示了如何利用Spring框架的不同配置文件来适应开发和生产环境。
           
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   774
					774
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            