外围配置文件
MyBatis 外围配置文件 mybatis-config.xml 蕴含了会深深影响 MyBatis 行为的设置和属性信息。
-
环境变量(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>
-
属性(properties)
可通过 properties 属性来实现援用配置文件,这些属性能够在内部进行配置且可动静替换,既能够在典型的 Java 属性文件中配置,也能够在 properties 元素的子元素【db.properties】中设置。
db.properties,可在外围配置文件中引入该内部文件driver=com.mysql.jdbc.Driver url=jdbc:mysql://127.0.0.1:3306
能够间接引入内部文件,或者在其中减少一些属性配置,如果两个文件有同一个字段,优先应用内部配置文件的
<!-- 引入内部配置文件 --> <properties resource="db.properties"> <property name="username" value="root"/> <property name="password" value="1xxxxx"/> </properties>
-
类型别名(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>