美文网首页SpringBoot整合Mybatis
SpringBoot整合Mybatis纯配置实现简单增删改查

SpringBoot整合Mybatis纯配置实现简单增删改查

作者: 我永远喜欢御坂美琴 | 来源:发表于2020-02-02 15:36 被阅读0次

前言:

继上文SpringBoot整合Mybatis纯注解实现简单增删改查,此处补充纯配置文件的方法,因在环境搭建步骤与上文一致,故此处不再赘述。

一.环境搭建

详见:SpringBoot整合Mybatis纯注解实现简单增删改查

二.编写代码

1.实体类

public class JavaBean {

    private Integer id;
    private String name;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

2.Dao

@Repository
public interface JavaBeanDao {

    List<JavaBean> FindAll();

    JavaBean FindOne(Integer id);

    int InsertOne(@Param("id") Integer id, @Param("string") String string);

    int UpdateOne(JavaBean javaBean);

    int DeleteOne(Integer id);
}

3.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.nanrailgun.demo20200131.Dao.JavaBeanDao">

    <select id="FindAll" resultType="JavaBean">
        SELECT * FROM javabean
    </select>

    <select id="FindOne" resultType="JavaBean">
        SELECT * FROM javabean WHERE id=#{id}
    </select>

    <insert id="InsertOne">
        INSERT INTO javabean (id,name) VALUE (#{id},#{string})
    </insert>

    <update id="UpdateOne">
        UPDATE javabean SET name=#{name} WHERE id=#{id}
    </update>

    <delete id="DeleteOne">
        DELETE FROM javabean WHERE id=#{id}
    </delete>
</mapper>

4.Springboot配置

此外,还需在Springboot配置文件中进行Mybatis的配置,此处以application.yml文件为例

mybatis:
  mapper-locations: classpath:Mybatis/mapper/*.xml
  type-aliases-package: com.nanrailgun.demo20200131.domain

以及我的项目目录:


项目目录
  • 配置项mapper-locations指明了让Mybatis扫描类路径下Mybatis包下的mapper包下的所有xml文件,Mybatis会根据这些xml文件的namespace(即下文)得知该xml文件是映射哪个Dao接口,并将接口中的方法进行增强后交由Springboot进行管理
<mapper namespace="com.nanrailgun.demo20200131.Dao.JavaBeanDao">
  • 配置项type-aliases-package指明了让Mybatis扫描实体类所在的包,故在xml映射文件中无需使用实体类全类名,可简写

5.Controller

@Controller
@ResponseBody
public class JavaBeanController {
    @Autowired
    private JavaBeanDao javaBeanDao;

    @GetMapping("/javabean")
    public List<JavaBean> FindAll(){
        return javaBeanDao.FindAll();
    }

    @GetMapping("/javabean/{id}")
    public JavaBean FindOne(@PathVariable Integer id){
        return javaBeanDao.FindOne(id);
    }

    @PostMapping("/javabean")
    public int InsertOne(@RequestParam("id") Integer id,@RequestParam("name") String name){
        return javaBeanDao.InsertOne(id,name);
    }

    @PutMapping("/javabean")
    public int UpdateOne(@RequestBody JavaBean javaBean){
        return javaBeanDao.UpdateOne(javaBean);
    }

    @DeleteMapping("/javabean/{id}")
    public int DeleteOne(@PathVariable Integer id){
        return javaBeanDao.DeleteOne(id);
    }
}

三.测试

使用Postman进行API接口测试

  • 先查询所有


    image.png
  • 更新一个


    image.png
  • 再查询所有


    image.png

成功!

四.总结

如有错误,还劳烦大佬指正,感激不尽

2020.2.2 下午3:36

相关文章

网友评论

    本文标题:SpringBoot整合Mybatis纯配置实现简单增删改查

    本文链接:https://www.haomeiwen.com/subject/zejqxhtx.html