栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Springboot简单整合MybatisPlus及其组件,以及测试多种数据库操作-CURD

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Springboot简单整合MybatisPlus及其组件,以及测试多种数据库操作-CURD

文章目录
    • Springboot简单整合MybatisPlus及其组件,以及测试多种数据库操作-CURD(MySQL)
      • 1. 配置依赖
      • 2. 配置拦截器插件
      • 3.实体类
      • 4.测试类

Springboot简单整合MybatisPlus及其组件,以及测试多种数据库操作-CURD(MySQL) 1. 配置依赖

    
        com.baomidou
        mybatis-plus-boot-starter
        3.5.1
    
        
            mysql
            mysql-connector-java
            runtime


2. 配置拦截器插件
@Configuration
@MapperScan("xxx.dao")
public class MybatisPlusConfig {
    
//    @Bean
//    public PaginationInterceptor paginationInterceptor(){
//        return new PaginationInterceptor();
//    }

    
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        //定义MP拦截器
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        //添加具体的拦截器
        //分页插件-MySQL
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        //防止全表更新插件
        interceptor.addInnerInterceptor(new BlockAttackInnerInterceptor());
        return interceptor;
    }
}

3.实体类
@ApiModel("省份实体类")



@TableName(value = "t_province_info")
public class ProvinceInfo implements Serializable {
    @ApiModelProperty("主键")
    private Long id;
    @ApiModelProperty("省份")
    private String province;
    @ApiModelProperty("地址")
    private String address;
    @ApiModelProperty("国家")
    private String country;
    @ApiModelProperty("城市")
    private String city;
    @ApiModelProperty("经度")
    private String longitude;
    @ApiModelProperty("纬度")
    private String latitude;

    public ProvinceInfo() {
    }

    public ProvinceInfo(Long id, String province, String address, String country, String city, String longitude, String latitude) {
        this.id = id;
        this.province = province;
        this.address = address;
        this.country = country;
        this.city = city;
        this.longitude = longitude;
        this.latitude = latitude;
    }

    public Long getId() {
        return id;
    }

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

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getCountry() {
        return country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getLongitude() {
        return longitude;
    }

    public void setLongitude(String longitude) {
        this.longitude = longitude;
    }

    public String getLatitude() {
        return latitude;
    }

    public void setLatitude(String latitude) {
        this.latitude = latitude;
    }

    @Override
    public String toString() {
        return "ProvinceInfo{" +
                "id=" + id +
                ", province='" + province + ''' +
                ", address='" + address + ''' +
                ", country='" + country + ''' +
                ", city='" + city + ''' +
                ", longitude='" + longitude + ''' +
                ", latitude='" + latitude + ''' +
                '}';
    }
}

4.测试类
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import xxx.ProvinceInfo;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.HashMap;
import java.util.List;


@SpringBootTest
@RunWith(SpringRunner.class)
public class MybatisPlusTest {
    @Autowired
    private ProvinceInfoDAO provinceInfoDAO;
    
    
    @Test
    public void select(){
        String province="广东省";
        String city="广州市";
        
        //wrapper为条件构造七,空代表查询所有数据
        List provinceInfos = provinceInfoDAO.selectList(null);
        Integer provinceNumber = provinceInfoDAO.selectCount(null);
        System.out.println("数据总数"+provinceNumber);
        
        ProvinceInfo provinceInfo = provinceInfoDAO.selectById(17);
        System.out.println(provinceInfo);
        
        HashMap hashMap=new HashMap<>();
        hashMap.put("province",province);
        hashMap.put("city",city);
        List provinceInfoList = provinceInfoDAO.selectByMap(hashMap);
        System.out.println(provinceInfoList);

    }
    
    @Test
    public void pageQuery(){
        //当前页
        int curPage=2;
        //该页条数大小
        int pageSize=5;
        Page page = new Page<>(curPage, pageSize);
        //wrapper为条件查询
        provinceInfoDAO.selectPage(page,null);
        List records = page.getRecords();
        System.out.println(records);
        records.forEach(System.out::println);
        System.out.println("总页数-->"+page.getTotal());
        System.out.println("当前页-->"+page.getCurrent());
        System.out.println("当前页查询条数-->"+page.getSize());
        System.out.println("总页数-->"+page.getPages());
    }
    
    @Test
    public void insert(){
        ProvinceInfo provinceInfo=new ProvinceInfo();
        provinceInfo.setAddress("西藏自治区阿里地区改则县");
//        provinceInfo.setId((long) 3000);//Id如果不自定义的话就会按策略默认生成
        provinceInfo.setCity("阿里地区");
        provinceInfo.setProvince("西藏自治区");
        provinceInfo.setCountry("中国");
        provinceInfo.setLatitude("35.0858083");
        provinceInfo.setLongitude("82.9338680");
        provinceInfoDAO.insert(provinceInfo);
        System.out.println("插入数据成功:"+provinceInfo);
    }

    
    @Test
    public void delete(){
//        provinceInfoDAO.delete(null);//删除所有
        
        Long id= Long.valueOf("1525391952407310337");
        provinceInfoDAO.deleteById(id);
        
        HashMap hashMap=new HashMap<>();
        hashMap.put("city","阿里地区");
        hashMap.put("id",3000);
        provinceInfoDAO.deleteByMap(hashMap);

        
    }
    

    @Test
    public void update(){
        ProvinceInfo provinceInfo=new ProvinceInfo();
        provinceInfo.setId(Long.valueOf("1525434676810067969"));
        provinceInfo.setAddress("12345");
        provinceInfoDAO.updateById(provinceInfo);
    }
    
    @Test
    public void testWrapperOr(){
        QueryWrapper wrapper=new QueryWrapper<>();
//        "SELECT id,province,address,country,city,longitude,latitude FROM t_province_info WHERe (city = ? OR city = ?)"
        wrapper.eq("city","广州市").or().eq("city","清远市");
        List provinceInfos = provinceInfoDAO.selectList(wrapper);
        System.out.println(provinceInfos);

    }
    
    @Test
    public void testWrapperAnd(){
        
        String province="广东省";
        String latitude="23.3946209";
        HashMap hashMap=new HashMap<>();
        hashMap.put("province","广东省");
        hashMap.put("latitude","23.3946209");
        List provinceInfoList = provinceInfoDAO.selectByMap(hashMap);
        System.out.println(provinceInfoList);
        
        QueryWrapper wrapper=new QueryWrapper<>();
//        "SELECT id,province,address,country,city,longitude,latitude FROM t_province_info WHERe (city = ? OR city = ?)"
        wrapper.eq("city","清远市")
                .eq("latitude","23.3946209089");
        //"SELECt id,province,address,country,city,longitude,latitude FROM t_province_info WHERe (city = ? AND latitude = ?)"
        List provinceInfos1 = provinceInfoDAO.selectList(wrapper);
        System.out.println(provinceInfos1);
//        
//        UpdateWrapper wrapper=new UpdateWrapper<>();
//        wrapper.set("province","广东省").set("latitude","23.394620901")
//                .eq("province","广东省01").eq("latitude","23.3946209");//有set
        ProvinceInfo provinceInfo=new ProvinceInfo();
        provinceInfo.setProvince("广东省");
        provinceInfo.setLatitude(latitude);
//        //UPDATE t_province_info SET province=?, latitude=? WHERe (province = ? OR latitude = ?)
//        provinceInfoDAO.update(null,wrapper);
//
        
        QueryWrapper wrapper1=new QueryWrapper<>();
        wrapper1.eq("province","广东省1").or().eq("latitude",latitude);//匹配字段值,没有set
        ProvinceInfo provinceInfo1=new ProvinceInfo();
        provinceInfo1.setProvince("广东省01");
        provinceInfo1.setLatitude(latitude);
        //UPDATE t_province_info SET province=?, latitude=? WHERe (province = ? OR latitude = ?)
        provinceInfoDAO.update(provinceInfo1,wrapper1);
    }

    
    @Test
    public void testOrderBy(){
        
        //SELECT id,province,address,country,city,longitude,latitude FROM t_province_info ORDER BY id ASC
        QueryWrapper wrapper=new QueryWrapper<>();
        wrapper.orderByAsc("id");
        System.out.println(provinceInfoDAO.selectList(wrapper).get(0));
        
        //SELECT id,province,address,country,city,longitude,latitude FROM t_province_info ORDER BY id DESC
        QueryWrapper wrapper1=new QueryWrapper<>();
        wrapper1.orderByDesc("id");
        System.out.println(provinceInfoDAO.selectList(wrapper1).get(0));

    }
    
    
    @Test
    public void testLike(){
        QueryWrapper wrapper=new QueryWrapper<>();
//        wrapper.notLike("province","东");
        wrapper.like("province","东");
        List provinceInfos = provinceInfoDAO.selectList(wrapper);
        System.out.println(provinceInfos);
    }

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/888635.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号