持久层接口开发

发布于:2024-08-24 ⋅ 阅读:(124) ⋅ 点赞:(0)

通常一个接口定义后,从持久层开始开发。

对于一个新模块需要使用工具生成模型类、mapper接口、mapper映射文件等,下边介绍一个工具用于自动生成代码。

1. 代码生成工具

1.1 安装插件

1.2 重启IDEA,连接mysql

1.3 配置代码生成规则

点击“check field”选择表中的字段。

点击“code generatro”生成代码。

生成成功在项目工程根目录有一个mymodule目录,里边为生成的代码,如下图:

对生成的代码根据自己的需求稍加修改,修改后拷贝到工程相应的包下即可。

2. mapper开发

        如果MyBatisPlus提供的单表的CRUD的mapper满足需求则不需要单独定义mapper接口,否则需要单独定义mapper接口。

        如果接口要返回的数据包括多张表的数据,而MybatisPlus提供的CRUD是针对单表的,需要自定义mapper实现多表关联查询。

        先定义mapper接口,再定义mapper映射。

3. 单元测试

        如果自定义了接口,要进行单元测试。

@SpringBootTest
@Slf4j
class MapperTest {
    @Resource
    private Mapper mapper;

    @Test
    void test_queryByRegionId() {
        List<ServeResDTO> serveResDTOS = serveMapper.queryByRegionId(1686303222843662337L);
        Assert.notEmpty(serveResDTOS,"列表为空");
    }

}
  • @SpringBootTest:

    • 这个注解表示测试类将运行在 Spring Boot 环境中,会加载整个 Spring 应用上下文。这对于测试依赖于 Spring 的组件和 Bean 的代码非常有用。
  • @Slf4j:

    • 这是一个来自 Lombok 的注解,用于自动生成一个名为 log 的日志记录器对象。在测试代码中,这个记录器可以用于记录测试的日志信息。
  • @Resource:

    • 这是 JSR-250 中定义的注解,用于依赖注入。在这个测试类中,@Resource 注解用于注入 mapper 接口的实例,该实例将用于执行 queryByRegionId 方法的测试。

Assert.notEmpty(serveResDTOS, "列表为空");:

  • 这是一个断言,用于检查 serveResDTOS 列表是否为空。Assert.notEmpty 方法会验证 serveResDTOS 列表是否包含至少一个元素,如果为空,则会抛出异常,并输出 "列表为空" 的错误信息。


网站公告

今日签到

点亮在社区的每一天
去签到