这个文章写得更详细哦 http://blog.didispace.com/spring-boot-learning-21-3-5/
1,vo
@Data
@NoArgsConstructor
public class User {
private Integer id;
private String name;
private String pwd;
}
2,对应的表
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`pwd` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
INSERT INTO `user` VALUES ('1', 'faker', '1');
INSERT INTO `user` VALUES ('2', 'mata', '2');
INSERT INTO `user` VALUES ('3', 'wuhu', '3');
INSERT INTO `user` VALUES ('4', 'bagu', '4');
INSERT INTO `user` VALUES ('5', 'sddd', '5');
INSERT INTO `user` VALUES ('6', 'faker', '6');
INSERT INTO `user` VALUES ('7', 'faker', '7');
INSERT INTO `user` VALUES ('8', 'faker', '8');
INSERT INTO `user` VALUES ('9', 'faker', '9');
INSERT INTO `user` VALUES ('10', '10', '10');
INSERT INTO `user` VALUES ('11', '11', '11');
INSERT INTO `user` VALUES ('12', '12', '12');
3,依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
关于mybatis-spring-boot-starter
的版本需要注意:
2.1.x
版本适用于:MyBatis 3.5+、Java 8+、Spring Boot 2.1+2.0.x
版本适用于:MyBatis 3.5+、Java 8+、Spring Boot 2.0/2.11.3.x
版本适用于:MyBatis 3.4+、Java 6+、Spring Boot 1.5
其中,目前还在维护的是2.1.x
版本和1.3.x
版本。
4,interface
@Mapper
//表示这是一个mybatis的mapper类
//也可以在另一个文件中使用@MapperScan=("com.xxx.xxx")
@Repository
public interface UserMapper {
List<User> selectAll();
int update(User user);
}
5,controller
@RestController
public class UserController {
@Autowired
private UserMapper um;
@RequestMapping("/selectAll")
public List<User> selectAll(){
List<User> list = um.selectAll();
return list;
}
}
6,xml
xml在resources文件夹下的mapper下,resources/mapper/UserMapper.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.kuang.mapper.UserMapper">
<select id="selectAll" resultType="user">
select * from user
</select>
</mapper>
7,application.properties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/study?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
spring.datasource.username=root
spring.datasource.password=root
mybatis.type-aliases-package: com.kuang.vo
mybatis.mapper-locations=classpath:**/*.xml
# 注意
1,driver并不是 com.mysql.jdbc.Driver"
2,url也比较特殊
3,location有个s,当初这里费劲了1个小时
application.properties和application.yml同时存在
https://blog.csdn.net/u014049521/article/details/82797252