其实Mybatis-plus和JPA 作用都是一样,都是使数据库和pojo实体类关联, 然后自动编写简单的sql语句。
SpringData JPA让我们解脱了DAO的操作,基本上所有CRUD都可以依赖它实现,在实际工程中,推荐使用Spring Data JPA + ORM(如:hibernate)完成操作。这样在切换不同的ORM框架时提供了极大的方便,同时也使数据库层操作更加简单,方便解耦
大家可能对JPA比较陌生,但大家一定都见过。
我们来这代码,@TableName(value = "plus_user") 。 @TableId(type = IdType.ID_WORKER) 这几个代码相信大家见过吧,这就是JPA的操作,就是让数据库与POJO 相对应.
@Data
@TableName(value = "plus_user")
@Accessors(chain = true)
public class User {
@TableId(type = IdType.ID_WORKER)
private Long id;
@TableField("name")
private String name;
@TableField("age")
private int age;
@TableField("email")
private String email;
@TableField(value = "created_time",fill = FieldFill.INSERT)
private Date createdTime;
@TableField(value = "last_modified_time",fill = FieldFill.INSERT_UPDATE)
private Date lastModifiedTime;
@TableField(value = "version")
@Version
private Long version;
@TableField(value = "is_deleted")
@TableLogic(value = "0",delval = "1")
private Long isDeleted;
}
springdata JPA就是hibernate的一种规范 。相当于jdbc和jdbc驱动的关系。
mybatis-plus相对容易上手,但是各有各的好处吧。