1、什么是ActiveRecord(只做简单了解即可)?
Active Record(活动记录),是一种领域模型模式,特点是一个模型类对应关系型数据库中的一个表,而模型类的一个实例对应表中的一行记录。
2、Mybatis Plus对AR有一定支持, 在MP中开启AR,仅需要实体类继承Model类即可
@Data //表名映射,用于新增才需要 @TableName("banner") public class BannerDO extends Model<BannerDO> { @TableId(value = "id", type = IdType.AUTO) private Integer id; private String img; private String url; private Integer weight; }
3、使用
BannerDO bannerDO = new BannerDO(); BannerDO b = bannerDO.selectOne(new QueryWrapper<BannerDO>().eq("id","1")); System.out.println(b);
4、使用建议
-
业务逻辑比较简单,当类基本上和数据库中的表一一对应时, ActiveRecord是非常方便的, 即业务逻辑大多数是对单表操作,简单,直观 一个类就包括了数据访问和业务逻辑.
-
ActiveRecord虽然有业务逻辑, 但基本上都是基于单表的. 跨表逻辑一般会放到当发生跨表的操作时, 往往会配合使用事务脚本(Transaction Script)中.
-
如果对象间的关联越来越多, 你的事务脚本越来越庞大, 重复的代码越来越多, 就不建议使用了
-
模型容易混乱,ActiveRecord保存了数据, 使它有时候看上去像数据传输对象(DTO). 但是ActiveRecord有数据库访问能力, 所以所以分布式或者大型项目基本不用
-
-
POJO: model/domain/dto/vo/bo/do
-
-