版权声明:原创 https://blog.csdn.net/rambler_designer/article/details/89035055
本文介绍SpringBoot如何集成MyBatis
相信查看这篇文章的你已经对SpringBoot和MyBatis有了一定的了解,那么我直接上干货了
首先在POM中导入相关依赖
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
然后是application.properties文件的相关配置(只提供mybatis部分配置)
server.port=80
spring.datasource.url=jdbc:mysql://localhost:3306/springboot
spring.datasource.username=你自己的账号
spring.datasource.password=你自己的密码
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
首先准备一个表我定义的user表,大家如果懒得自己写,就复制以下代码即可
--创建数据库
create database springboot;
--创建表
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) DEFAULT NULL,
`sex` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
创建实体类,和建的表相关联
package com.rambler.domain;
public class User {
private int id;
private String username;
private String sex;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public User(String username, String sex) {
this.username = username;
this.sex = sex;
}
public User(){
}
}
定义相关的Mapper
package com.rambler.mapper;
import com.rambler.domain.User;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@Mapper
public interface UserMapper {
@Select("select * from user where id = #{id}")
User getUserById(@Param("id") int id);
@Insert("insert into user(username,sex) values(#{username},#{sex})")
void InsertUser(@Param("username")String username,@Param("sex")String sex);
}
这里只是演示效果,因此逻辑结构比较简单,因此省略了service层,直接将UserMapper注入Controller
package com.rambler.controller;
import com.rambler.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/Article")
public class ArticleController {
@Autowired
private UserMapper userMapper;
public static void main(String[] args) {
SpringApplication.run(ArticleController.class,args);
}
@RequestMapping("/getUser")
public Object getUserById(Integer id){
return userMapper.getUserById(id);
}
@RequestMapping("/insertUser")
public void insertUser(String username,String sex){
userMapper.InsertUser(username,sex);
}
}
测试效果,没写具体页面,直接返回json,或者在数据库中查看效果即可,访问如下url
http://localhost/Article/insertUser?username=rambler&sex=fff
查看结果