Spring boot整合MyBatis-Plus 之二:增删改查

2020-10-03 10:45|来源: 网络

基于上一篇springboot整合MyBatis-Plus之后,实现简单的增删改查


创建实体类

添加表注解TableName和主键注解TableId

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
@TableName("t_article")
public class Article implements Serializable {
    @TableId(type = IdType.INPUT)
    private String id;
    private String title;

    ......
}


数据访问接口dao

继承BaseMapper接口,编写数据访问接口dao

public interface ArticleDao extends BaseMapper<Article> {
}


基本的增删改查示例

@Service
public class ArticleService {
    @Autowired
    private ArticleDao articleDao;
    public List<Article> findAll() {
        return articleDao.selectList(null);
    }
    public Article findById(String id) {
        return articleDao.selectById(id);
    }

    public void add(Article article) {
        articleDao.insert(article);
    }

    public void update(Article article) {
        //根据id号更新
        //方法1
        articleDao.updateById(article);
   
        //方法2
        EntityWrapper wrapper = new EntityWrapper<Article>();
        wrapper.eq("id", article.getId());
        articleDao.update(article, wrapper);
    }

    public void delete(String id) {
        articleDao.deleteById(id);
    }
}


MyBatis-Plus条件与分页查询

条件查询

使用Mybatis Plus 提供的EntityWrapper对象封装where查询条件,例如以下使用方式:

EntityWrapper wrapper = new EntityWrapper<Article>();
wrapper.eq("id", article.getId());

//动态sql,例如<if test="null != field"> and field='xxx' </if>
wrapper.eq(null != map.get(field), field, map.get(field));


分页

使用 Mybatis Plus 提供的Page对象

向Mybatis Plus中注入PaginationInterceptor插件

新建config包,创建MybatisPlusConfig对象,添加下面的代码

@Configuration
public class MybatisPlusConfig {

    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }
}

完整代码

public Page search(Map map, int page, int size) {
    EntityWrapper wrapper = new EntityWrapper<Article>();
    Set<String> fieldSet = map.keySet();
    for(String field : fieldSet) {
        //wrapper.eq(field, map.get(field));
        wrapper.eq(null != map.get(field), field, map.get(field));
    }

    Page page1 = new Page(page, size);
    List list = articleDao.selectPage(page1, wrapper);
    page1.setRecords(list);
    return page1;
}


本文转自网络


相关问答

更多

简单的structs spring hibernate增删改查 mysql easyUI

很巧,我公司全部用到了你说的,使用的就是easyui,需要的话回复我

用spring mvc和mybatis整合,开发一个图书管理系统,实现增删改查 求源程序啊

源码?自己不想动脑子做!那算了吧,还有,我告诉你,这种架构的程序网上比较少,尤其是要图书管理系统的

有关spring mvc + mybatis的简单增删改查,急,在线等!!!!

a.jsp: <form action="Servlet地址" method="post(get也可以)" > 用户名:<input type="text" name="username" id="username"> <br> <input type="submit" value=“提交"> </form> servlet: String username=request.getParameter("username");

struts2+spring+hibernate整合进行增删改查的详细例题

随便一本struts2+spring+hibernate的书上都有, 去买本吧,又花不了几个钱

java用spring mvc + hibernate,实现数据库的增删改查

1)在applicationContext里面配置Hibernate的dataSource和SessionFactory 2)编写Dao的 接口是实现类。如果用到 Spring的Hibernate的操作模板(HibernateTemplate)可以继承HibernateDaoSupport,实现类注解成@Repository 3)编写Action,然后注解成@Controller,在Action里面需要用@Autowired注入Dao的 实例 4)配置applicationContext.xml, ...

java用spring mvc + hibernate,实现数据库的增删改查

1)在applicationContext里面配置Hibernate的dataSource和SessionFactory 2)编写Dao的接口是实现类。如果用到Spring的Hibernate的操作模板(HibernateTemplate)可以继承HibernateDaoSupport,实现类注解成@Repository 3)编写Action,然后注解成@Controller,在Action里面需要用@Autowired注入Dao的实例 4)配置applicationContext.xml,加上S ...

有关spring mvc + mybatis的简单增删改查,急,在线等!!!!

a.jsp: <form action="Servlet地址" method="post(get也可以)" > 用户名:<input type="text" name="username" id="username"> <br> <input type="submit" value=“提交"> </form> servlet: String username=request.getParameter("username");

Spring+Spring MVC+MyBatis 实现一个用户表的增删改查?

你这个问题有点大了,文字讲解不太好解释通吧,不过我刚做了一个项目,就是使用的ssm,如果需要,可以留下邮箱。