mybatis配置文件-连接数据源的配置

< ?xml version="1.0" encoding="UTF-8" ?>
< !DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
< configuration>
    <typeAliases> 
        <typeAlias alias="User" type="com.yihaomen.mybatis.model.User"/> 
    </typeAliases> 
  <!-- jdbc连接-->
    <environments default="development">
        <environment id="development">
        <transactionManager type="JDBC"/>
            <dataSource type="POOLED">

    <!--如果是Oracle driverClass="

    <property name="driver" value="oracle.jdbc.driver.OracleDriver"/>  

            <property name="url" value="jdbc:oracle:thin:@192.168.2.141:1515:apptest" />

       -->

    以下是mysql配置

           <property name="driver" value="com.mysql.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis" />
            <property name="username" value="root"/>
            <property name="password" value="password"/>
            </dataSource>
        </environment>
    </environments>
    
    <mappers>
        <mapper resource="com/yihaomen/mybatis/model/User.xml"/>
    </mappers>
< /configuration>

说明

<transationManager>元素让您为SQL Map配置事务管理服务。

属性type指定所使用的事务管理器类型。这个属性值可以是一个类名,也可以是一个别名。包含在框架的三个事务管理器分别是:JDBCJTAEXTERNAL

JDBC:通过常用的Connectioncommit()rollback()方法,让JDBC管理事务。

JTA:本事务管理器使用一个JTA全局事务,使SQL Map的事务包括在更大的事务范围内,这个更大的事务范围可能包括了其他的数据库和事务资源。这个配置需要一个UserTransaction属性,以便从JNDI获得一个UserTransaction。参见以下JNDI数据源的例子。

EXTERNAL:这个配置可以让您自己管理事务。您仍然可以配置一个数据源,但事务不再作为框架生命周期的一部分被提交或回退。这意味着SQLMap外部应用的一部分必须自己管理事务。这个配置也可以用于没有事务管理的数据库(例如只读数据库)。


<environmentsdefault="development">

 <environment id="development">

  <transactionManager type="JDBC" />

  <dataSource type="JNDI">

   <property name="initial_context" value="java:comp/env"/>

   <property name="data_source" value="jdbc/name"/>

  </dataSource>

 </environment>

</environments>

其中红色部分[jdbc/name]可以替换为weblogic的jndi_name;

如果是web容器外部的java应用使用weblogic的数据源可以参考如下配置(注意需要在app应用中导入weblogic.jar)

<environments default="development">

        <environment id="development">

            <transactionManager type="JDBC" />

            <dataSource type="JNDI">

                <property name="context.java.naming.factory.initial" value="weblogic.jndi.WLInitialContextFactory" />

                <property name="context.java.naming.provider.url" value="t3://localhost:7001" />

                <property name="data_source" value="TestDatasource" />

            </dataSource>

</environment>