mybatis 基础配置
mybatis起源
mybatis是Apache的一个开源项目ibatis.是尽力种种迁移由ibatis转变而来.
mybatis的优势
1、支持定制化SOL,存储过程,以及高级映射的优秀的持久层框架.
2、几乎避免了所有JDBC的手写部分.
3、避免了SQL语句的维护不易.
安装mybatis
https://github.com/mybatis/mybatis-3/
进入官网下载配置文件
但其实只要在对应的pom文件里面,就可以下载导入的.
对应配置文件
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.3</version>
</dependency>
</dependencies>
mybatis配置对应开发环境
导入log4j文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
<param name="Encoding" value="UTF-8" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n" />
</layout>
</appender>
<logger name="java.sql">
<level value="debug" />
</logger>
<logger name="org.apache.ibatis">
<level value="info" />
</logger>
<root>
<level value="debug" />
<appender-ref ref="STDOUT" />
</root>
</log4j:configuration>
创建mybatisSOL映射
<mapper namespace="suibian">
<select id="selectEmployee" resultType="com.atguigu.myabtis.helloWorld.Employee">
select id ,last_name lastName ,email ,gender from tbl_employee where id = #{id}
<!-- select * from tbl_employee where id = #{id} -->
</select>
</mapper>
//suibian 指的是你的方法接口
//id 指的是方法名
//resultType 指的是返回值类型
//parameterType 指的是响应数据类型
settings配置
这是mybatis中极为重要的配置,改变运行时行为.
下图即为所有配置,分别对应了不同行为,在需求要求时,可以对应应用.
<settings>
<setting name="cacheEnabled" value="true"/>
<setting name="lazyLoadingEnabled" value="true"/>
<setting name="multipleResultSetsEnabled" value="true"/>
<setting name="useColumnLabel" value="true"/>
<setting name="useGeneratedKeys" value="false"/>
<setting name="autoMappingBehavior" value="PARTIAL"/>
<setting name="autoMappingUnknownColumnBehavior" value="WARNING"/>
<setting name="defaultExecutorType" value="SIMPLE"/>
<setting name="defaultStatementTimeout" value="25"/>
<setting name="defaultFetchSize" value="100"/>
<setting name="safeRowBoundsEnabled" value="false"/>
<setting name="mapUnderscoreToCamelCase" value="false"/>
<setting name="localCacheScope" value="SESSION"/>
<setting name="jdbcTypeForNull" value="OTHER"/>
<setting name="lazyLoadTriggerMethods"
value="equals,clone,hashCode,toString"/>
</settings>
typeAliases 别名处理
类型别名是为 Java 类型设置一个短的名字,可以方便我们引用某个类.
当然包也可以创建别名.
代码如下:
<typeAliases>
<typeAlias type="com.atguigu.mybatis.beans.Employee"
alias="emp"/>
</typeAliases>
<typeAliases>
<package name="com.atguigu.mybatis.beans"/>
</typeAliases>
初学mybatis,错误请斧正.