@Entity
作用:设置一个类为实体类
@Entity public class User { }
@Table
作用:设置实体类对应的表,常与@Entity一起使用
参数:name制定表名,不写的话,为实体类的类名
@Entity @Table(name = "tbl_user") public class User { }
@Id
作用:设置对象标识符
@Id private Integer id;
@GeneratedValue
作用:设置标识符的生成策略,常与@Id一起使用
参数:strategy指定具体的生成策略
方式一:@GeneratedValue(strategy=GenerationType.AUTO) 也是默认策略, 即写成@GeneratedValue也可。
类似于hibernate的native策略,生成方式取决于底层的数据库。
方式二:@GeneratedValue(strategy = GenerationType.IDENTITY)指定“自动增长”策略,适用于MySQL。
方式三:@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_tbl_user")指定“序列”策略,使用于Oracle。
其中generator表示生成器的名字。
而且还要指定@SequenceGenerator(name = "seq_tbl_user", sequenceName = "seq_tbl_user", allocationSize = 1)注解配合使用
其中name指定生成器的名字(与generator的值一样),sequenceName指定数据库中定义序列的名字,allocationSize指定序列每次增长1
方式四:若不指定@GeneratedValue注解,则要手动提供Id值。user.setId();
@Id /** 自增 用于MySQL */ @GeneratedValue(strategy = GenerationType.IDENTITY) /** 序列 用于Oracle */ @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_tbl_user") @SequenceGenerator(name = "seq_tbl_user", sequenceName = "seq_tbl_user", allocationSize = 1) /** 默认的 等同于@GeneratedValue */ @GeneratedValue(strategy = GenerationType.AUTO) private Integer id;
@Column
作用:设置列
参数:
name:指定列名
unique:指定唯一约束
nullable:指定是否允许为空
length:长度
@Column(name = "user_name", length = 255, nullable = true, unique = true) private String name;
设置默认值:
@Column(name = "user_name") private String name = "monday";
注意:若不写@Column注解,则一切使用@Column注解的默认值。
@Temporal
作用:设置日期时间
方式一:@Temporal(TemporalType.DATE)映射为日期 // birthday date (只有日期)
方式二:@Temporal(TemporalType.TIME)映射为日期 // birthday time (是有时间)
方式三:@Temporal(TemporalType.TIMESTAMP)映射为日期 //birthday datetime (日期+时间)
@Temporal(TemporalType.DATE) private Date birthday;
@Lob
作用:设置大数据类型
方式一:
@Lob private String text; //text longtext
方式二:
@Lob private byte[] image; // image longblob
@Enumerated
作用:设置枚举类型
方式一:
/** 保存字符串到数据库 */ @Enumerated(EnumType.STRING) private Role role;
方式二:
/** 保存整数到数据库 */ @Enumerated(EnumType.ORDINAL) private Role role;
上面定义的枚举:Role
/** 角色 */ public enum Role { 游客, 会员, 管理员 }
使用:
User user = new User(); user.setRole(Role.管理员);
@Transient
作用:修饰的字段不会被持久化
@Transient private String temp;
这样也可以:
private transient String temp;
以上都这都是比较常用的。
以上的注解全部定义在javax.persistence下面。
相关推荐
JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。 JPA支持XML和JDK5.0注解两种元数据的形式。...这个文档是针对JPA常用注解的一些说明。
JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。 JPA支持XML和JDK5.0注解两种元数据的形式。...这个文档是针对JPA常用注解的一些说明。
jpa 基础 常用 标注 注解,一些常用注解 的说明,更好的jpa入门。
JDK1.6的新特性: 注解 其中介绍了JPA框架中的常用注解
Spring 常用注解整理,分类:创建对象;注入数据;范围;全局异常;生命周期;新注解;JPA;扩展原理等注解类型。
'SpringDataJPA从入门到精通'分为12章 内容包括整体认识JPA、JPA基础查询方法、定义查询方法、注解式查询方法、@Entity实例里面常用注解详解、JpaRepository扩展详解、JPA的MVC扩展REST支持、DataSource的配置、乐观...
JPA 方法名常用查询 JPA 使用@Query注解实现JPQL和本地自定义查询 JPA API 条件查询 (子查询,多表连接查询) JPA结合QueryDSL轻松完成复杂查询(自连接,多表连接查询) 参与文档: Pro JPA2中文版:精通Java持久化API ...
jpa入门级教程,有jpa基础,环境搭建,常用注解,jpa映射,以及jpql介绍和常见异常.
详细介绍了Spring Boot最常用的30个注解,包含概念、原理、示例 Spring Boot最常用的30个注解 一、 @SpringBootApplication 二、 Spring Bean 相关 1 @Controller 2 @Service 3 @Repository 4 @Component 5 @Bean 6 ...
Spring Data 是 Spring 的一个子项目。用于简化数据库访问,支持NoSQL 和 关系...3:详解Spring Data JPA常用接口 4:详解Spring Data JPA各种查询方式 5:详解Spring Data JPA在web方面的用法 具体内容,可以参考大纲:
Java EE常用框架 WebService 介绍 基于Web的服务。它使用Web(HTTP)方式,接收和响应外部系统的某种请求。从而实现远程调用 术语 XML. Extensible Markup Language -扩展性标记语言 WSDL – ...
n 基础应用-常用注解使用场景介绍及入门 n 高级特性-自定义BeanNameGenerator n 高级特性-自定义TypeFilter n 高级特性-ImportSelector和ImportBeanDefinitionRegistrar的分析 n 高级特性-自定义ImportSelector n ...
* @content ejb3注解的API定义在javax.persistence.*包里面。 * * 注释说明: * @Entity —— 将一个类声明为一个实体bean(即一个持久化POJO类) * @Id —— 注解声明了该实体bean的标识属性(对应表中的主键)。 * ...
easyjdbc-spring-boot-startereasyjdbc-spring-boot-starter,支持部分常用的JPA注解,使得经过注解的实体可以像Hibernate,jpa一样进行增、删、改和获取。SQL构造工具、链式API等让查询操作更为灵活。动态实体映射...
2,使编码变得简单,SpringBoot采用 JavaConfig的方式对Spring进行配置,并且提供了大量的注解,极大的提高了工作效率,比如@Configuration和@bean注解结合,基于@Configuration完成类扫描,基于@bean注解把返回值...
Spring MVC的常用注解 @Controller @RequestMapping @ResponseBody @RequestBody @PathVariable @RestController Spring MVC的基本配置 静态资源映射 拦截器配置 @ControllerAdivce ...
常用标签汇总 项目源码 JPA 和 Thymeleaf 实践 多环境配置 添加Servlet支持 效果图 项目源码 使用Swagger2构建RESTful API 文档 RESTful API设计准则 swagger注解总结 快速上手 项目源码 Spring Boot ...
常用注解实践示例、问答S02 - 依赖注入Spring @Component 模型DI 类型 - 构造函数、setter、p 和 c 命名空间Bean 作用域实践示例、问答S03 - 数据访问 - 第一部分数据源绑定,连接池配置JDBCTemplate 介绍工具 - ...
4.3 Spring MVC 的常用注解 82 4.3.1 点睛 82 4.3.2 示例 83 4.4 Spring MVC 基本配置 87 4.4.1 静态资源映射 88 4.4.2 拦截器配置 89 4.4.3 @ControllerAdvice 91 4.4.4 其他配置 94 4.5 Spring MVC 的高级配置 98 ...
4.3 Spring MVC 的常用注解 82 4.3.1 点睛 82 4.3.2 示例 83 4.4 Spring MVC 基本配置 87 4.4.1 静态资源映射 88 4.4.2 拦截器配置 89 4.4.3 @ControllerAdvice 91 4.4.4 其他配置 94 4.5 Spring MVC 的高级配置 98 ...