environments
mybatis支持多个环境 可以任意配置、比如 开发环境 测试环境 正式环境、
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
<environment id="test">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
</environment>
</environments>
transactionManager
MyBatis 支持两种类型的事务管理器:JDBC 和 MANAGED(托管);
JDBC:应用程序负责管理数据库连接的生命周期;
MANAGED:由应用服务器负责管理数据库连接的生命周期;(Tomcat没有此功能、一般商业服务器才有此功能,如JBOSS,WebLogic)
<transactionManager type="JDBC" />
DataSource
用来配置数据源;类型有:UNPOOLED,POOLED,JNDI;
UNPOOLED,没有连接池,每次数据库操作,MyBatis 都会创建一个新的连接,用完后,关闭;适合小并发项目;
POOLED,用上了连接池;
JNDI,使用应用服务器配置 JNDI 数据源获取数据库连接;
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</dataSource>
properties
配置属性、可以用properties配置文件、
<!-- 第一种方式 配置文件 -->
<properties resource="jdbc.properties"/>
<!-- 第二种方式 不推荐 -->
<properties>
<property name="jdbc.driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="jdbc.url" value="jdbc:mysql://localhost:3306/db_mybatis"/>
<property name="jdbc.username" value="root"/>
<property name="jdbc.password" value="123456"/>
</properties>
typeAliases
给类的完成限定名取别名,方便使用;
<!-- 第一种方式 这个包下的类的别名就是类名 -->
<typeAliases>
<package name="com.java1234.model"/>
</typeAliases>
<!-- 第二种方式 不推荐 -->
<typeAliases>
<typeAlias alias="Student" type="com.java1234.model.Student"/>
</typeAliases>
mappers
引入映射文件、
<mappers>
<!-- 第一种方式 扫描该包下的所有映射文件 -->
<package name="com.java1234.mappers"/>
<!-- 以下两种方式不推荐 -->
<!-- <mapper resource="com/java1234/mappers/StudentMapper.xml" /> -->
<!-- <mapper class="com.java1234.mappers.StudentMapper"/> -->
</mappers>
配置log4j日志
log4j.properties
#info是信息、appender1和appender2是输出的目标、
log4j.rootLogger=info,appender1,appender2
#第一个目标appender1是ConsoleAppender控制台输出、
log4j.appender.appender1=org.apache.log4j.ConsoleAppender
#第二个目标appender2是FileAppender输出到文件、
log4j.appender.appender2=org.apache.log4j.FileAppender
log4j.appender.appender2.File=C:/logFile.txt
#layout是指定类型、
log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout
log4j.appender.appender2.layout=org.apache.log4j.TTCCLayout
测试类
private static Logger logger=Logger.getLogger(StudentTest.class);
logger.info("添加成功!");