代码模型
数据集的代码模型,是指根据数据模型的 XML 模型文件(*.data.m)对应生成的 Java ORM 持久化框架代码。由于微服务应用的后端采用 SpringBoot 框架,主要包括 entity 和 mapper 类。entity 存放实体类,mapper 存放对数据库数据的持久化操作类。
目录结构
系统为了便于开发者的开发,将每个数据集生成相应的实体类和 mapper 文件,并且支持 Mybatis-Plus。系统生成的文件位于代码的 gen-java 目录下,以 main 模块为例,目录结构如下:
├─model
│ ├─service
│ │ ├─main
│ │ │ ├─orderm.data.m -- 数据模型文件
│ │ │ ├─src
│ │ │ │ ├─main
│ │ │ │ │ ├─gen-java -- 系统生成的文件,注意不能修改
│ │ │ │ │ │ ├─main
│ │ │ │ │ │ │ ├─mapper
│ │ │ │ │ │ │ │ └─OrdermMapper.java -- Mapper接口,继承 Mybatis-Plus 基础类
│ │ │ │ │ │ │ ├─entity
│ │ │ │ │ │ │ │ └─Orderm.java -- 实体类
│ │ │ │ │ ├─java -- 开发者的文件
│ │ │ │ │ │ ├─main
│ │ │ │ │ │ │ ├─mapper
│ │ │ │ │ │ │ │ └─OrdermCustomMapper.java -- Mapper接口
│ │ │ │ │ │ │ └─service
其中:
- *.data.m 是数据模型的描述文件,每个数据集对应 1 个描述文件。
- gen-java 下的代码是应用每次编译后自动生成的代码文件,注意不能修改(即使修改了也会被还原)。
- java 下的代码是开发者自己编写的代码文件,可随意修改。
entity 类
系统生成的实体类文件如下,包括全部属性及其 get、set 方法。
public class Orderm {
/**
* 订单编号
*/
@TableField(value = "orderNo")
private String orderNo;
public String getOrderNo() {
return orderNo;
}
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
}
mapper 类
系统生成的 mapper 接口文件如下,主要包括 6 个常用方法:插入、根据主键更新、根据主键删除、根据主键查找、查找全部、统计记录数。
@Mapper
public interface OrdermMapper extends BaseMapper<main.entity.Orderm> {
@Insert({
"<script>",
"insert into main_orderm (fid,orderNo,orderDate,money,valid,image,createTime,discount,payment,batch,orderNumber,payType,exchangeRate,templateType)",
" values (",
"#{fid},#{orderNo},#{orderDate},#{money},#{valid},#{image},#{createTime},#{discount},#{payment},#{batch},#{orderNumber},#{payType},#{exchangeRate},#{templateType}",
" )",
"</script>"
})
public int insert(main.entity.Orderm model);
@InterceptorIgnore(blockAttack = "true")
@Update("此处省略SQL语句")
public int updateByPrimaryKey(main.entity.Orderm model);
@InterceptorIgnore(blockAttack = "true")
@Delete("此处省略SQL语句")
public int deleteByPrimaryKey(String pk);
@Select("此处省略SQL语句")
public List<main.entity.Orderm> findAll();
@Select("此处省略SQL语句")
public int countAll();
@Select("此处省略SQL语句")
public main.entity.Orderm findByPrimaryKey(String pk);
}
其中:
- 由于继承了 Mybatis-Plus 的 BaseMapper,后续可以使用 Mybatis-Plus 相关 API 来灵活实现对数据的 CRUD。
- 如果需要扩展默认生成的 mapper 类,不要在原有类上进行修改,开发者可以在 java 目录下添加自定义的 mapper 类。比如 java/main/mapper目录下添加 OrdermCustomMapper.java,实现可参考生成的 mapper 类。
不生成 Java 对象
系统默认生成 Java 对象,在高级中取消勾选“代码生成”,表示该数据集不生成 Java 对象,设置界面如下图所示