数据源的配置

原创 2015年07月09日 17:33:59

             一、JNDI ---数据源

1、Weblogic:  定义JNDI

Spring中对于JNDI的访问,提供了便捷的方法,在Spring的org.springframework.jndi包中包含了所有的类。其中提供了一下核心类: 


1)JndiTemplate:它是这个包的核心类,用来简化对JNDI的操作。它提供了对于lookup、bind方法。 
<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 
    <property name="environment"> 
        <props> 
      <prop key="java.naming.factory.initial">org.jnp.interfaces.NamingContextFactory</prop> 
            <prop key="java.naming.provider.url">jnp://localhost:1099</prop> 
            <prop key="java.naming.factory.url.pkgs">org.jboss.naming:org.jnp.interfaces</prop> 
        </props> 
    </property> 
</bean> 

2)JndiObjectFactoryBean:looks up 一个JNDI对象,暴露在JNDI中找到的对象给其他Bean引用,例如在数据源情况下作为数据访问对象的 "dataSource" property 

使用JndiObjectFactoryBean,例如 
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
    <property name="jndiName"> 
        <value>java:/MySqlDS</value> 
    </property> 
</bean> 

实例: 

数据源的配置: 

(1)配置可以访问到同一应用服务器的jndi数据源 
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
    <property name="jndiName"> 
        <value>jdbc/cqccms</value> 
    </property> 
</bean> 

(2)配置能访问远程jndi数据源 
方法1:直接通过JndiObjectFactoryBean的jndiEnvironment属性定义远程JNDI参数 
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
  <property name="jndiName"> 
     <value>jdbc/cqccms</value> 
  </property> 
  <property name="jndiEnvironment"> 
     <props> 
        <prop key="java.naming.factory.initial"> 
          weblogic.jndi.WLInitialContextFactory 
        </prop> 
        <prop key="java.naming.provider.url">t3://172.16.101.42:7001</prop> 
        <prop key="java.naming.security.principal">weblogic</prop> 
        <prop key="java.naming.security.credentials">weblogic</prop> 
     </props>    
   </property> 
</bean> 

方法2:先定义jndiTemplate,由jndiTemplate定义远程JNDI参数 

<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> 
    <property name="environment"> 
        <props> 
            <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop> 
            <prop key="java.naming.provider.url">t3://172.16.101.42:7001</prop> 
            <prop key="java.naming.security.principal">weblogic</prop> 
            <prop key="java.naming.security.credentials">weblogic</prop> 
        </props> 
    </property> 
</bean> 

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
  <property name="jndiName"> 
     <value>jdbc/cqccms</value> 
  </property> 
  <property name="jndiTemplate" ref="jndiTemplate" /> 
</bean> 

2、Tomcat:

JNDI配置文件:context.xml(/WebRoot/META-INF目录下)

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

username="root"
password="root"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/day16"
maxActive="8"
maxIdle="4"/>
</Context>



JNDI代码:

import java.sql.Connection;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;


public class BaseDao {
public void add(){
try{
Context initCtx = new InitialContext();  //初始化jndi
Context envCtx = (Context) initCtx.lookup("java:comp/env");  //得到jndi容器
DataSource ds = (DataSource) envCtx.lookup("jdbc/EmployeeDB");  //从容器中检索链接池

Connection conn = ds.getConnection();
System.out.println(conn);


}catch (Exception e) {
e.printStackTrace();
}
}

}



版权声明:本文为博主原创文章,未经博主允许不得转载。

Spring的三种配置数据源的方式

1、使用org.springframework.jdbc.datasource.DriverManagerDataSource  说明:DriverManagerDataSource建立连接是只要有...
  • dong_19890208
  • dong_19890208
  • 2016年05月09日 16:46
  • 3515

SSH数据源配置

配置一个数据源      Spring在第三方依赖包中包含了两个数据源的实现类包,其一是Apache的DBCP,其二是 C3P0。可以在Spring配置文件中利用这两者中任何一个配置数据源。 ...
  • dhdhdh0920
  • dhdhdh0920
  • 2011年11月02日 13:33
  • 4834

websphere8.5配置db2数据源

websphere8.5配置db2数据源
  • u011389297
  • u011389297
  • 2017年07月02日 11:40
  • 2031

jboss配置数据源

jboss使用xml文件配置数据源,在JBOSS_HOME/docs/examples/jca文件夹下可以找到各种数据库的数据源配置文件的实例,jboss数据源配置文件的文件名格式是:*-ds.xml...
  • jyy208
  • jyy208
  • 2010年08月18日 14:18
  • 1850

史上最全最详细JNDI数据源配置说明

环境:tomcat6.0+Maven 要使用数据源就要知道数据源的由来:在java开发使用jdbc都要经历这四步 ①加载数据库驱动程序:(Class.forName(“数据库驱动类”);) ②连...
  • zhanglf02
  • zhanglf02
  • 2017年08月05日 17:12
  • 1860

常用的数据源配置

常用的数据源配置(共三种:dbcp,c3p0, 用JavaWeb服务器管理数据源:Tomcat)第一种:DBCPDBCP:Apache推出的Database Connection Pool 使用步骤...
  • daliyuan350649623
  • daliyuan350649623
  • 2016年09月22日 17:17
  • 1151

数据源配置及web.xml

--------------------------------------oracle------------------------------- source="org.eclipse.j...
  • wangh_2
  • wangh_2
  • 2014年05月05日 17:44
  • 1177

JBoss7/WildFly配置数据源:mysql

两种方法添加数据源 1.手工添加  2.jboss-cli命令行添加 -----------------------------------------------------------------...
  • timo1160139211
  • timo1160139211
  • 2017年04月23日 15:44
  • 1114

Tomcat数据源配置笔记

现在做javaWeb开发用的服务器一般都是tomcat,而且数据源的配置往往都是在applicationContext.xml中配置一个dataSource的bean,这样往往就会造成很多的不便,本文...
  • Gavin_wangzg
  • Gavin_wangzg
  • 2016年07月20日 23:36
  • 1885

websphere6.1配置oracle数据源

先安装好oracle 10g,新建用户,用户名和密码都是JPATEST 配置过程如图: 点击,环境->WebSphere变量 选择ORACLE_JDBC_DRIVER_PATH。...
  • feier7501
  • feier7501
  • 2014年03月01日 14:44
  • 1747
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据源的配置
举报原因:
原因补充:

(最多只允许输入30个字)