java

springboot整合mybatis-plus

2020-08-10  本文已影响0人  星钻首席小管家

1.依赖

      <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.2</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.23</version>
        </dependency>

2.yml文件

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    url: jdbc:mysql://127.0.0.1:3306/db-mcms-open?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
    username: root
    password: 123456
    driver: com.mysql.jc.jdbc.Driver

    druid:
      # 连接池的配置信息
      # 初始化大小,最小,最大
      initial-size: 5
      minIdle: 5
      maxActive: 20
      #配置获取连接等待超时的时间
      maxWait: 60000
      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
      time-between-eviction-runs-millis: 60000
      # 配置一个连接在池中最小生存的时间,单位是毫秒
      min-evictable-idle-time-millis: 300000
      validation-query: SELECT 1 FROM DUAL
      test-while-idle: true
      test-on-borrow: false
      test-on-return: false
      pool-prepared-statements: true
      max-pool-prepared-statement-per-connection-size: 20

3.启动类上加注解

@ComponentScan(basePackages = {"com.elasticsearch.*"})
@SpringBootApplication
@MapperScan("com.elasticsearch.mapper")

4.PeopleMapper

package com.elasticsearch.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.elasticsearch.entity.People;

/**
 * @Description:
 * @Auther: sp
 * @Date: 2020/8/1 14:44
 */
public interface PeopleMapper extends BaseMapper<People> {

}

5.PeopleService

public interface PeopleService {

    JsonResult<People> getById(Integer id);

    JsonListResult<People> selectList(People people);
}

6.PeopleServiceImpl

@Service
public class PeopleServiceImpl implements PeopleService {

    @Autowired
    private PeopleMapper mapper;

    private LambdaQueryWrapper<People> getWrapper(People people) {
        LambdaQueryWrapper<People> wrapper = new LambdaQueryWrapper<>();
        if(!ObjectUtils.isEmpty(people.getPeopleName())){
            wrapper.eq(People::getPeopleName,people.getPeopleName());
        }
        wrapper.orderByDesc(People::getPeopleDatetime);
        return wrapper;
    }

    @Override public JsonResult<People> getById(Integer id) {
        People people = mapper.selectById(id);
        return new JsonResult<>(true,"seccess",people);
    }

    @Override public JsonListResult<People> selectList(People people) {
        LambdaQueryWrapper<People> wrapper = getWrapper(people);
        List<People> list = mapper.selectList(wrapper);
        return new JsonListResult<>(list);
    }
}

7.测试LoginController

@Controller
public class LoginController {

    @Autowired PeopleService peopleService;

    @GetMapping(value = "/login")
    @ResponseBody
    public String login(){
        People people = new People();
        people.setPeopleName("admin");
        JsonListResult<People> list = peopleService.selectList(people);
        return list.getItems().get(0).toString();
    }

    @GetMapping("/index")
    public String index(){
        return "index";
    }

}
上一篇 下一篇

猜你喜欢

热点阅读