外围配置文件

MyBatis外围配置文件mybatis-config.xml蕴含了会深深影响 MyBatis 行为的设置和属性信息。

  1. 环境变量(environments)
    Mybatis能够配置多套环境,dev,test,prod等然而每个sqlSessionFactory实例只能抉择一种环境。
    Mybatis默认的事务管理器是JDBC,连接池是POOLED

    <environments default="dev"> <environment id="dev">     <transactionManager type="JDBC"/>     <dataSource type="POOLED">         <property name="driver" value="com.mysql.jdbc.Driver"/>         <property name="url" value="jdbc:mysql://127.0.0.1:3306"/>         <property name="username" value="root"/>         <property name="password" value="xxx"/>     </dataSource> </environment> <environment id="test">     <transactionManager type="JDBC"/>     <dataSource type="POOLED">         <property name="driver" value="com.mysql.jdbc.Driver"/>         <property name="url" value="jdbc:mysql://127.0.0.1:3306"/>         <property name="username" value="ro11ot"/>         <property name="password" value="x11xx"/>     </dataSource> </environment></environments>
  2. 属性(properties)
    可通过properties属性来实现援用配置文件,这些属性能够在内部进行配置且可动静替换,既能够在典型的 Java 属性文件中配置,也能够在 properties 元素的子元素【db.properties】中设置。
    db.properties,可在外围配置文件中引入该内部文件

    driver=com.mysql.jdbc.Driverurl=jdbc:mysql://127.0.0.1:3306

    能够间接引入内部文件,或者在其中减少一些属性配置,如果两个文件有同一个字段,优先应用内部配置文件的

    <!--引入内部配置文件--><properties resource="db.properties"> <property name="username" value="root"/> <property name="password" value="1xxxxx"/></properties>
  3. 类型别名(typeAliases)
    形式一:类型别名是为java类型设置一个短的名字,意义在于升高冗余的全限定类名书写。

    <!--能够给实体类起别名--><typeAliases> <typeAlias type="com.sunfl.pojo.User" alias="User"/></typeAliases>

    形式二:也能够指定一个包名,MyBatis 会在包名上面搜寻须要的 Java Bean。
    扫描实体类的包,它的默认别名就为这个类的类名,首字母小写。

    <!--能够给实体类起别名--><typeAliases> <package name="com.sunfl.pojo"/></typeAliases>

    在实体类比拟少的时候,应用第一种形式;如果实体类非常之多,倡议应用第二种;第一种能够DIY别名,第二种则不行,如果非要改,须要在实体类上减少注解。

    @Alias("helloUser")public class User {}
    <select id="getUserList" resultType="helloUser"> select * from mybatis.user</select>