pom中添加相关依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!-- MYSQL包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
配置application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/springboot-learning
spring.datasource.password=root
spring.datasource.username=root
# 驼峰命名规范
mybatis.configuration.map-underscore-to-camel-case=true
#配置mybatis xml配置文件
mybatis.mapper-locations=classpath:mapper/*.xml
# 设置打印mybatis SQL语句
logging.level.com.lzc.mybatis.mapper=debug
新建一张user表
CREATE TABLE `user` (
`user_id` int(8) NOT NULL AUTO_INCREMENT COMMENT '主键自增',
`name` varchar(50) NOT NULL COMMENT '用户名',
`password` varchar(50) NOT NULL COMMENT '密码',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
User实体类
package com.lzc.mybatis.dataobject;
public class User {
private Integer userId;
private String name;
private String password;
public User() {
}
public User(String name, String password) {
this.name = name;
this.password = password;
}
public User(Integer userId, String name, String password) {
this.userId = userId;
this.name = name;
this.password = password;
}
// 省略get、set方法
}
新建UserMapper.java,前面三个方法采用注解方式,后面两个方法采用xml实现
package com.lzc.mybatis.mapper;
import com.lzc.mybatis.dataobject.User;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserMapper{
@Insert("insert into user(name, password) values(#{name}, #{password})")
@Options(useGeneratedKeys = true, keyProperty = "userId")
int insert(User user);
@Select("select * from user where user_id = #{id}")
User getById(Integer id);
@Select("select * from user")
List<User> getAll();
int insertAll(List<User> users);
int deleteAll(List<Integer> ids);
}
在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.lzc.mybatis.mapper.UserMapper" >
<delete id="deleteAll" parameterType="java.util.List">
delete from user where user_id in
<foreach item="id" collection="list" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<insert id="insertAll" parameterType="java.util.List">
insert into user (user_id, name, password) values
<foreach collection="list" item="user" index= "index" separator =",">
(
#{user.userId},#{user.name}, #{user.password}
)
</foreach>
</insert>
</mapper>
测试类
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserMapperTest {
@Autowired
private UserMapper userMapper;
@Test
public void insert() {
User user = new User("lzc","123456");
userMapper.insert(user);
System.out.println(user.toString());
}
@Test
public void getById() {
User user = userMapper.getById(6);
System.out.println(user);
}
}