我的入门tk.mybatis的项目已放在github上,欢迎下载:链接地址....
---------------------------------------------------------------------------------------------------------------------------------------------------------------
****下面的文章内容是针对,已有的mybatis配置环境进行修改,实现tk.mybatis****
1.添加pom配置:
<!-- tk.mybatis -->
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>4.0.0</version>
</dependency>
2.修改<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">:
--原配置:
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.luck.dao"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>
--修改为:
<bean class="tk.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.luck.dao"/>
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
<property name="markerInterface" value="tk.mybatis.mapper.common.Mapper" />
<property name="properties">
<value>
mappers=tk.mybatis.mapper.common.Mapper
</value>
</property>
</bean>
3.修改实体类:
@Table(name = "record")
public class Record {
@Id
@Column(name = "id")
private Integer id;
@Column(name = "send_id")
private Integer sendId;
@Column(name = "receive_id")
private Integer receiveId;
@Column(name = "group_id")
private String groupId;
// get/set 方法这里我就不列出来了,自己添加
}
说明:
@Table name属性: 数据库中的表名
@Column name属性: 列名(若列名和实体类中的属性一致,可以省略不写) ...
4.修改mapper:
import tk.mybatis.mapper.common.Mapper;
//只需要继承Mapper<实体类>
public interface RecordMapper extends Mapper<Record> {
}
Mapper中已经包含了常用方法:insert,delete,update..下图列了一些:
5.修改xml
去掉自动生成的代码。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.luck.dao.RecordMapper" >
<resultMap id="BaseResultMap" type="com.luck.pojo.Record" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="send_id" property="sendId" jdbcType="INTEGER" />
<result column="receive_id" property="receiveId" jdbcType="INTEGER" />
<result column="group_id" property="groupId" jdbcType="VARCHAR" />
<result column="content" property="content" jdbcType="VARCHAR" />
<result column="status" property="status" jdbcType="INTEGER" />
<result column="send_time" property="sendTime" jdbcType="TIMESTAMP" />
<result column="read_time" property="readTime" jdbcType="TIMESTAMP" />
</resultMap>
</mapper>
end ....................................................