使用注解映射单实体
- @Entity:声明一个实体类。
- @Table(name=“table_name”):为实体类指定对应的数据库表。
- @Id:声明实体类的OID属性。
- @GeneratedValue(generator=“increment_generator”):声明OID的生成策略。<JPA通用策略生成器>
- @GenericGenerator(name=“increment_generator”, strategy=“increment”):使用Hibernate提供的生成策略。<自定义主键生成策略>
- @GeneratedValue(strategy=“GenerationType.*”)
*有四个值:AUTO、IDENTITY、SEQUENCE、TABLE。
TABLE:使用一个特定的数据库表格来保存主键;
SEQUENCE:根据底层数据库的序列来生成主键;
IDENTITY:主键由数据库自动生成(主要是自动增长型);
AUTO:主键由程序控制
- @Column(name="columnName”) :将属性映射到列。
name=“columnName” 字段名称;
unique=false 是否在该字段上设置唯一约束;
nullable=true 字段是否能为空;
insertable=true 控制 insert语句;
updatable=true 控制 update语句;
length=255 指定字段长度。
- @Access(AccessType.PROPERTY):
通过 getter 和 setter 方法访问实体类的属性;
需要在 getter 方法上定义字段的属性。 - @Access(AccessType.FIELD):
直接访问实体类的属性,可以不定义 getter 和 setter 方法;
需要在变量上定义字段的属性。
package com.test.entity;
@Entity
@Table(name="product")
public class Product