MyBatis:mybatis-config.xml配置文件详解

mybatis-config.xml

<?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>

</configuration>

configuration(配置)

properties(属性)

可以通过properties属性引入外部的配置信息

  1. 新增db.propertis配置文件
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test
username=root
password=123
  1. 引入外部配置文件db.properties
    在properties属性中也可以配置属性,但外部配置文件的优先级更高。
    <properties resource="db.properties">
        <property name="username" value="root"/>
        <property name="password" value="123"/>
    </properties>

settings(设置)

	<!-- 由于全局配置中:jdbcTypeForNull=OTHER,oracle不支持,以下两种方式:
		1、#{address,jdbcType=NULL};
		2、jdbcTypeForNull=NULL
	 -->
	<settings>
		<!-- 开启驼峰命名 -->
		<setting name="mapUnderscoreToCamelCase" value="true"/>
		<setting name="jdbcTypeForNull" value="NULL"/>
	</settings>

typeAliases(类型别名)

        <!-- 设置别名 -->
	<typeAliases>
		<!-- <typeAlias type="com.kw.mybaits.po.User" alias="user"/> -->
		<!-- 批量使用别名 -->
		<package name="com.kw.mybatis.po"/>
		<!-- 在批量起别名的情况下,可以使用@Alias注解为某个类型指定新的别名 -->
	</typeAliases>

MyBatis:mybatis-config.xml配置文件详解

typeHandlers(类型处理器)

objectFactory(对象工厂)

plugins(插件)

environments(环境配置)

	<!-- 和spring整合后将取消 -->
 	<environments default="dev_mysql">
 		<environment id="dev_mysql">
 			<transactionManager type="JDBC"/>
 			<dataSource type="POOLED">
 				<property name="driver" value="${jdbc.driver}"/>
 				<property name="url" value="${jdbc.url}"/>
 				<property name="username" value="${jdbc.username}"/>
		    	<property name="password" value="${jdbc.password}"/>
			 </dataSource>
 		</environment>
 		
 		<environment id="dev_oracle">
 			<transactionManager type="JDBC"/>
 			<dataSource type="POOLED">
 				<property name="driver" value="${orcl.driver}"/>
 				<property name="url" value="${orcl.url}"/>
 				<property name="username" value="${orcl.username}"/>
		    	<property name="password" value="${orcl.password}"/>
			</dataSource>
 		</environment>
 	</environments>

environment(环境变量)

transactionManager(事务管理器)

dataSource(数据源)

databaseIdProvider(数据库厂商标识)

<!-- 5、databaseIdProvider:支持多数据库厂商的;
		   type="DB_VENDOR":VendorDatabaseIdProvider
		         作用就是得到数据库厂商的标识(驱动getDatabaseProductName()),mybatis就能根据数据库厂商标识来执行不同的sql;
		   MySQL,Oracle,SQL Server,xxxx
	 -->
	<databaseIdProvider type="DB_VENDOR">
		<!-- 为不同的数据库厂商起别名 -->
		<property name="MySQL" value="mysql"/>
		<property name="Oracle" value="oracle"/>
		<property name="SQL Server" value="sqlserver"/>
	</databaseIdProvider>

MyBatis:mybatis-config.xml配置文件详解

mappers(映射器)

<mappers>
 	<mapper resource="com/kw/mybatis/helloworld/User.xml"></mapper>
 	<!-- 注册配置文件方式 -->
 	<mapper resource="mapper/UserMapper.xml"></mapper>
 	<!-- 注册接口方式:
 		 1、有sql映射文件,映射文件名必须和接口同名,并且放在与接口同一目录下。
 		        此方法需要接口和xml配置文件进行绑定
 		 2、没有sql映射文件,所有的sql都是利用注解写在接口上(不常用) -->
 	<!-- <mapper class="com.kw.mybatis.dao.UserMapper"/> -->
 	<!-- 批量扫描mapper -->
 	<!-- <package name="com.kw.mybatis.dao"/> -->
</mappers>

上一篇:study13


下一篇:手动安装pyhanlp