加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

JNDI数据源配置

发布时间:2020-12-12 15:24:11 所属栏目:MsSql教程 来源:网络整理
导读:? 1.第一步:在Tomcat安装目录下server.xml文件中添加如下Context片段 Context path="/edoc" docBase="edoc" debug="0" Resource name="jdbc/edoc" auth="Container" type="javax.sql.DataSource"/ ResourceParams name="jdbc/edoc" parameter namefactory/n

?

1.第一步:在Tomcat安装目录下server.xml文件中添加如下<Context>片段

<Context path="/edoc" docBase="edoc" debug="0">

<Resource name="jdbc/edoc" auth="Container" type="javax.sql.DataSource"/>

<ResourceParams name="jdbc/edoc">

<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

</parameter>

<parameter>

<name>driverClassName</name>

<value>net.sourceforge.jtds.jdbc.Driver</value>

</parameter>

<parameter>

<name>url</name>

<value>jdbc:jtds:sqlserver://127.0.0.1:1433/edoc</value>

</parameter>

<parameter>

<name>username</name>

<value>sa</value>

</parameter>

<parameter>

<name>password</name>

<value>12345678</value>

</parameter>

<parameter>

<name>maxActive</name>

<value>30</value>

</parameter>

<parameter>

<name>maxIdle</name>

<value>60</value>

</parameter>

<parameter>

<name>maxWait</name>

<value>1000</value>

</parameter>

<parameter>

<name>defaultAutoCommit</name>

<value>true</value>

</parameter>

<parameter>

<name>removeAbandoned</name>

<value>true</value>

</parameter>

<parameter>

<name>removeAbandonedTimeout</name>

<value>60</value>

</parameter>

</ResourceParams>

</Context>

或在conf/Catalina/localhost目录下创建文件edoc.xml,文件内容为上述<Context>片段

2.第二步:在Web应用配置文件web.xml中添加如下片段

<resource-ref>

?? ?<res-ref-name>jdbc/edoc</res-ref-name>

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

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

?? ?<res-sharing-scope>Shareable</res-sharing-scope>

</resource-ref>

其中,<res-ref-name>,<res-type>,<res-auth>元素值须与Tomcat中配置的<Resource>元素属性值保持一致

3.第三步:Web应用引用数据源,如下为通过spring引用

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

? <property name="jndiName">

? <value>java:comp/env/jdbc/edoc</value>

? </property>

</bean>

?

说明:上述测试连接数据库为SQLServer2000 sp3

测试页面: <%@ page language="java" contentType="text/html; charset=gb2312" %> <%@ page import="javax.naming.*" %> <%@ page import="javax.sql.*"%> <%@ page import="java.sql.*" %> <html> <body> <% ?? DataSource ds = null; ?? try{ ?? ? Context initCtx = new InitialContext(); ?? ? Context envCtx = (Context) initCtx.lookup("java:comp/env"); ?? ? ds = (DataSource)envCtx.lookup("jdbc/edoc"); ?? ? if(ds!=null){ ?? ? ? ? ? out.println("DataSource is OK!"); ?? ? ? ? ? Connection cn=ds.getConnection(); ?? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? if(cn!=null){ ?? ? ? ? ? ? ? ? out.println("Connection is Ok!"); ? }else { out.println("Get Connection Fail!"); ? } }else{ out.println("Get DataSource Fail!"); ? } ?? }catch(Exception ne){? ?? ? ne.printStackTrace(); ?? ? ? out.println(ne.getMessage()); ?? } %> </body> </html>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读