通用Mapper插件和分页插件

传统的mybatis需要在映射文件中写sql,由于业务的不同造成sql语句不同,而无法通用,开发人员工作量巨大,同时也不易维护。这个时候可以尝试通用mapper.
官网:https://www.oschina.net/p/mybatis-mapper
maven坐标:

<dependency>
    <groupId>com.github.abel533</groupId>
    <artifactId>mapper</artifactId>
    <version>3.4.0</version>
</dependency>

JPA注解
JPA全称Java Persistence API. JPA通过JDK5.0注解或XML描述对象 - 关系表的映射关系,并将运行期的对象持久化到数据中。 Sun引入新的JPA ORM规范出于两个原因。其一:简化现有Java EE和Java SE应用开发工作。其二:Sun希望整合ORM技术。在POJO实体对象上加JPA注解,可以实现类和数据库之间的映射。

  1. @Table(name = "数据库表名") 标识对应的数据库表
  2. @Transient 忽略类中指定字段不参与数据库映射关系
  3. @Id 标识主键,可以在多个属性字段上标识该注解,用以表示复合主键
  4. @GeneratedValue(strategy = GenerationType.IDENTITY) 自增
  5. @Column(name="数据库表字段名") 当属性和字段不一致,设置映射关系.可以在mybatis的配置xml文件中配置<setting name="mapUnderscoreToCamelCase" value="true"/>来实现自动驼峰映射
    (1).表名默认使用类名,按驼峰规则,下划线后字母自动大写,如UserInfo对应表名user_info
    (2).当表名和类名不对应时,使用@Table(name=”数据库表名”)进行指定。
    (3). 属性和字段名不对应时,使用@Column(name=”数据库表字段名”)进行制定。
    (4). 当不是表的属性时,使用@Transient可以忽略此属性的数据库映射
    (5). 强烈建议设置主键@Id。 如果没有设置主键,所有字段作为一个联合主键,这种效率非常低。
    (6). 实体类可以继承使用,注解也将继承。
    (7). 基于基本类型, 如int作为实体字段时会有默认值0, 而且无法消除,所以实体类中强烈建议不要使用基本数据类型,用包装类型取而代之。
    (8). 主键策略,支持序列、UUID、主键自增三种方式,其中序列和UUID可以配置多个,主键自增只配置一个。

@GeneratedValue(strategy=GenerationType.IDENTITY) 主键自增长策略
@GeneratedValue(strategy=GenerationType.Auto) 默认策略,类似于hibernate的native策略,生成方式取决于底层的数据库。
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator=”seq_u”) 指定”序列”策略,使用于Oracle,其中generator表示序列的名字。
@GeneratedValue(generator=”UUID”) 可以用任意字符串类型长度超过32位的字段

第一步:创建java maven工程
添加依赖jar包

引用块内容

猜你喜欢

转载自blog.csdn.net/zhangningkid/article/details/73849253