1、配置全局的jndi

在Tomcat的安装目录下的conf/目录中找到context.xml文件,打开,在里添加如下代码:

<Resource name="family"
            auth="Container"
            type="javax.sql.DataSource"
            driverClassName="com.mysql.jdbc.Driver"
            url="jdbc:mysql://localhost:3306/family"
            username="root"
            password="root"
            maxActive="20"
            maxIdle="10"
            maxWait="10000"/>
这是在配置JNDI全局数据源,当然这是针对MySQL的

注意:当使用jdbc时数据库的URL是这样写的
url="jdbc:mysql://127.0.0.1:3306/family"

url="jdbc:mysql://ip:port/dbName?useUnicode=true&characterEncoding=UTF-8"
但如果使用jndi还这样写就会报错,但是URL可以写成如下形式。但大多数都是在dbName都就不写了

url="jdbc:mysql://ip:port/dbName?useUnicode=true&characterEncoding=UTF-8" 
Mysql数据库如下:

<Resource name="family"
auth="Container"

type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/family"

username="root"
password="123"

maxActive="20"
maxIdle="10"

maxWait="10000"/>

Oracle数据库是这样的,如果还想添加其他属性,可以自行查找

<Resource name="jndi/oracle" 
                auth="Container"   
                type="javax.sql.DataSource"   
                driverClassName="oracle.jdbc.driver.OracleDriver"   
                url="jdbc:oracle:thin:@xxxxxxxxxxxxx:htfuat"   
                username="xx"   
                password="xx"   
                poolMaximumActiveConnections="20"   
                poolMaximumIdleConnections="10"   
                poolMaximumCheckoutTime="10000"/>   

  2、导入数据库驱动包

在Tomcat的目录下的lib/目录中添加数据库驱动的jar包,mysql的驱动包,如mysql-connector-java-5.1.18-bin.jar,网上都可以下载到,oracle的驱动包可以自己找哈,官网下载

3、在mybatis.xml(不一定是这个名字,数据源配置文件下)

将原来的jdbc配置改成如下配置:

<!-- JNDI方式配置数据源 -->
 <bean id="myDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
   <property name="jndiName">
      <value>java:comp/env/family</value>
   </property>
 </bean>

GhostRider
3 声望0 粉丝