application.properties 配置文件參數設置
spring.datasource.url=jdbc:mysql://localhost:3306/test?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=iosaps
spring.datasource.tomcat.test-while-idle=true
spring.datasource.tomcat.validation-query=SELECT 1
mybatis.config-location=classpath:mybatis/mybatis-config.xml
mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
</configuration>
sql語句Mapper映射文件
<?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.techprimers.mybatis.springbootmybatis.mapper.UsersMapper">
<select id="findAll" resultType="com.techprimers.mybatis.springbootmybatis.model.Users">
select * from users
</select>
<insert id="insert">
insert into users(id,name,salary) values(#{id},#{name},#{salary})
</insert>
<update id="update">
update users set name=#{name},salary=#{salary} where name=#{name}
</update>
<delete id="delete">
delete from users where name=#{name}
</delete>
</mapper>
Mapper接口
public interface UsersMapper {
List<Users> findAll();
void insert(Users users);
void update(Users users);
void delete(Users users);
}
應用程序主引導類
@MapperScan("com.techprimers.mybatis.springbootmybatis.mapper")
@SpringBootApplication
public class SpringBootMybatisApplication {
public static void main(String[] args) {
SpringApplication.run(SpringBootMybatisApplication.class, args);
}
}
注意:當使用 @MapperScan 註解時,就不需在每個Mapper接口上添加 @Mapper註解了。
使用:
@RestController
@RequestMapping("/rest/users")
public class UsersResource {
private UsersMapper usersMapper;
public UsersResource(UsersMapper usersMapper) {
this.usersMapper = usersMapper;
}
@GetMapping("/all")
public List<Users> getAll(){
return usersMapper.findAll();
}
@GetMapping("/update")
private List<Users> update(){
Users users=new Users();
users.setName("Youtube");
users.setSalary(2333L);
users.setId(10);
usersMapper.insert(users);
return usersMapper.findAll();
}
@GetMapping("/updateUsers")
private List<Users> updateUsers(){
Users users=new Users();
users.setName("Youtube");
users.setSalary(555L);
usersMapper.update(users);
return usersMapper.findAll();
}
@GetMapping("/delete")
private List<Users> delete(){
Users users=new Users();
users.setName("Youtube");
usersMapper.delete(users);
return usersMapper.findAll();
}
}