您的位置:首页 > 编程语言 > Java开发

Spring中配置JNDI数据源

2015-01-26 16:32 357 查看
Spring中配置JNDI数据源

如果应用配置在高性能的应用服务器(如WebLogic或Websphere等)上,更希望使用应用服务器本身提供的数据源。应用服务器的数据源使用JNDI开放调用者使用,Spring为此专门提供引用JNDI资源的JndiObjectFactoryBean类。

一、在Spring配置文件中的配置

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">

<property name="jndiName">

<value>java:comp/env/jdbc/DBPool</value>

</property>

</bean>

二、在web.xml的配置(这些标签就是用来建立当前应用环境到服务器资源的映射的)

<resource-ref>

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

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

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

</resource-ref>

三、在Tomcat的配置

server.xml下 <GlobalNamingResources></GlobalNamingResources>中的配置

<Resource

auth="Container"

description="DB Connection"

driverClass="oracle.jdbc.driver.OracleDriver"

maxPoolSize="50"

minPoolSize="2"

initialPoolSize="5"

maxIdleTime="60"

autoCommitOnClose="true"

acquireIncrement="3"

name="jdbc/DBPool"

user="root"

password="123456"

jdbcUrl="jdbc:oracle:thin:@192.168.120.165:1521:orcl10"

factory="org.apache.naming.factory.BeanFactory"

type="com.mchange.v2.c3p0.ComboPooledDataSource"

/>

context.xml下<Context></Context>中的配置

<ResourceLink
global="jdbc/DBPool" name="jdbc/DBPool" type="javax.sql.DataSource"
/>

四、调用

这样既可以通过Spring获得数据源得到Connection对象 , 也可以通过下面获得Connection 对象

Context context = new InitialContext();

DataSource dataSource = (DataSource)context.lookup("java:comp/env/jdbc/DBPool");

Connection con = dataSource.getConnection();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: