MybtisPlus快速开发(从controller到mapper)

创建新项目

在这里插入图片描述

写好配置文件

server:
  port: 8905

#配置MP控制台打印日志
mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

spring:
  datasource:
    type: com.zaxxer.hikari.HikariDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3307/shequ-acl?characterEncoding=utf-8&useSSL=false
    username: root
    password: root

  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
    time-zone: GMT+8

使用mybatisX插件快速生成一张表的相关类

在这里插入图片描述

在这里插入图片描述

而后将生成好的文件夹剪切进创建好的目录中:

在这里插入图片描述

引入依赖:

        <!--   -web依赖引入以后才会有@RestController注解     -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.1</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <!--Lombok引入-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>

启动类上加扫描注解:

@SpringBootApplication
@MapperScan("com.mybatistest.mybatistest.mapper")
public class MybatistestApplication {

    public static void main(String[] args) {
        SpringApplication.run(MybatistestApplication.class, args);
    }

}

写好Controller层

@RestController
@RequestMapping("mybatisPlus/test")
public class PermissionController {

    @Autowired
    PermissionService permissionService;

    @Autowired
    PermissionServiceSecond permissionServiceSecond;

    @GetMapping("/slectByNameSecond")
    public List<Permission> slectByNameSecond(@RequestParam String name){

        return permissionServiceSecond.slectByNameSecond(name);
    }
    @GetMapping("/slectByName")
    public List<Permission> queryByName(@RequestParam String name){

        return permissionService.queryByName(name);
    }
}

Mapper层

如果要在Service层注入mapper的话需要在mapper接口上加上@Repository注解

public interface PermissionMapper extends BaseMapper<Permission> {

}
@Repository
public interface PermissionMapperSecond extends BaseMapper<Permission> {

}

Service层

方式1:实现类不做继承

public interface PermissionService extends IService<Permission> {

    List<Permission> queryByName(String name);
}


@Service
public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permission>
    implements PermissionService{

    @Override
    public List<Permission> queryByName(String name) {
        Permission permission = new Permission();
        permission.setName(name);
        QueryWrapper<Permission> queryWrapper = new QueryWrapper<Permission>(permission);
        List<Permission> permissions = baseMapper.selectList(queryWrapper);
        return permissions;
    }
}

方式二:实现类继承ServiceImpl<xxMapper, xxEntity>

public interface PermissionServiceSecond extends IService<Permission> {

    List<Permission> slectByNameSecond(String name);
}

@Service
public class PermissionServiceSecondImpl implements PermissionServiceSecond {
    @Autowired
    PermissionMapperSecond permissionMapperSecond;
    @Override
    public List<Permission> slectByNameSecond(String name) {
            Permission permission = new Permission();
            permission.setName(name);
            QueryWrapper<Permission> queryWrapper = new QueryWrapper<Permission>(permission);
            List<Permission> permissions = permissionMapperSecond.selectList(queryWrapper);
            return permissions;
    }

    @Override
    public boolean saveBatch(Collection<Permission> entityList, int batchSize) {
        return false;
    }

    @Override
    public boolean saveOrUpdateBatch(Collection<Permission> entityList, int batchSize) {
        return false;
    }

    @Override
    public boolean updateBatchById(Collection<Permission> entityList, int batchSize) {
        return false;
    }

    @Override
    public boolean saveOrUpdate(Permission entity) {
        return false;
    }

    @Override
    public Permission getOne(Wrapper<Permission> queryWrapper, boolean throwEx) {
        return null;
    }

    @Override
    public Map<String, Object> getMap(Wrapper<Permission> queryWrapper) {
        return null;
    }

    @Override
    public <V> V getObj(Wrapper<Permission> queryWrapper, Function<? super Object, V> mapper) {
        return null;
    }

    @Override
    public BaseMapper<Permission> getBaseMapper() {
        return null;
    }

    @Override
    public Class<Permission> getEntityClass() {
        return null;
    }
}

执行结果

[
    {
        "code": "btn.User.add",
        "createTime": 1622455537000,
        "id": 7,
        "isDeleted": 0,
        "name": "添加",
        "pid": 3,
        "type": 2,
        "updateTime": 1622507669000
    },
    {
        "code": "btn.Role.add",
        "createTime": 1622455537000,
        "id": 12,
        "isDeleted": 0,
        "name": "添加",
        "pid": 4,
        "type": 2,
        "updateTime": 1622507768000
    },
    {
        "code": "btn.Permission.add",
        "createTime": 1622455537000,
        "id": 16,
        "isDeleted": 0,
        "name": "添加",
        "pid": 5,
        "type": 2,
        "updateTime": 1622507859000
    },
    {
        "code": "btn.AttrGroup.add",
        "createTime": 1624006384000,
        "id": 28,
        "isDeleted": 0,
        "name": "添加",
        "pid": 27,
        "toCode": "AttrGroupAdd",
        "type": 2,
        "updateTime": 1624006445000
    },
    {
        "createTime": 1624006770000,
        "id": 34,
        "isDeleted": 0,
        "name": "添加",
        "pid": 33,
        "toCode": "SkuInfoAdd",
        "type": 2,
        "updateTime": 1624006874000
    },
    {
        "code": "",
        "createTime": 1624007141000,
        "id": 38,
        "isDeleted": 0,
        "name": "添加",
        "pid": 37,
        "toCode": "ActivityInfoAdd",
        "type": 2,
        "updateTime": 1624007173000
    },
    {
        "createTime": 1624007217000,
        "id": 41,
        "isDeleted": 0,
        "name": "添加",
        "pid": 40,
        "toCode": "CouponInfoAdd",
        "type": 2,
        "updateTime": 1624007242000
    }
]
  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Clap of thunder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值