怎么用jndi获取tomcat的数据库配置
展开全部
找到tomcat解压后的目录 C:\programs\apache-tomcat-7.0.42
在conf目录下主要在server.xml和context.xml中添加配置
在server.xml中添加数据库连接地址,在<GlobalNamingResources>中添加如下内容
<Resource auth="Container" driverClassName="org.postgresql.Driver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" initialSize="3" jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer" jmxEnabled="true" logAbandoned="true" maxActive="5" maxWait="10000" minEvictableIdleTimeMillis="30000" minIdle="3" name="jdbc/userdb" password="123456" removeAbandoned="true" removeAbandonedTimeout="60" testOnBorrow="true" testOnReturn="false" testWhileIdle="true" timeBetweenEvictionRunsMillis="30000" type="javax.sql.DataSource" url="jdbc:postgresql://localhost:5432/userdb" username="postgres" validationInterval="30000"/>
在context.xml添加jndi全局变量,在 </Context>上面添加如下内容:
<ResourceLink global="jdbc/userdb" name="jdbc/userdb" type="javax.sql.DataSource"/>
属性中的name对应的值要和上一步 Resource 里面的name值一样
有多个数据库连接时对应上面多个<Resource>和<ResourceLink>即可
在spring中使用jndi的方法 在applicationContext.xml配置文件中添加dataSource
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/userdb" /> <property name="resourceRef" value="true" /> </bean>
在conf目录下主要在server.xml和context.xml中添加配置
在server.xml中添加数据库连接地址,在<GlobalNamingResources>中添加如下内容
<Resource auth="Container" driverClassName="org.postgresql.Driver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" initialSize="3" jdbcInterceptors="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer" jmxEnabled="true" logAbandoned="true" maxActive="5" maxWait="10000" minEvictableIdleTimeMillis="30000" minIdle="3" name="jdbc/userdb" password="123456" removeAbandoned="true" removeAbandonedTimeout="60" testOnBorrow="true" testOnReturn="false" testWhileIdle="true" timeBetweenEvictionRunsMillis="30000" type="javax.sql.DataSource" url="jdbc:postgresql://localhost:5432/userdb" username="postgres" validationInterval="30000"/>
在context.xml添加jndi全局变量,在 </Context>上面添加如下内容:
<ResourceLink global="jdbc/userdb" name="jdbc/userdb" type="javax.sql.DataSource"/>
属性中的name对应的值要和上一步 Resource 里面的name值一样
有多个数据库连接时对应上面多个<Resource>和<ResourceLink>即可
在spring中使用jndi的方法 在applicationContext.xml配置文件中添加dataSource
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/userdb" /> <property name="resourceRef" value="true" /> </bean>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询