mybatis
引入
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录
mybatis
- 导入 mybatis-spring-boot-starter jar 包
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
- 配置 实体类跟配置文件的位置
mybatis:
# 实体类
type-aliases-package: cn.gd.cz.hong.springbootlearn.entity
# 配置文件
mapper-locations: mapper/*/*Mapper.xml
- 启动类配置扫描mapper
@MapperScan("cn.gd.cz.hong.springbootlearn.dao")
- 编写接口
@Mapper
public interface UserDao {
User selectById(String id);
}
- 编写sql
<?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="cn.gd.cz.hong.springbootlearn.dao.UserDao">
<resultMap id="BaseResultMap" type="cn.gd.cz.hong.springbootlearn.entity.User">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="name" property="name" jdbcType="VARCHAR"/>
<result column="password" property="password" jdbcType="VARCHAR"/>
<result column="birthday" property="birthday" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
id, name, password, birthday
</sql>
<select id="selectById" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
from user
where id = #{id}
</select>
</mapper>
参考SpringBoot 整合 Mybatis 和 Mysql (详细版)
- 自测
private static final Logger LOGGER=
LoggerFactory.getLogger(UserController.class);
@Autowired
UserDao userDao;
@PostConstruct
public void init(){
User user=userDao.selectById("1");
LOGGER.info("user : {}",user);
}
引用
-
mybatis官网
mybatis
网友评论