java中的项目!
来源:互联网 发布:js设计模式 编辑:程序博客网 时间:2024/05/21 19:38
@Entity --注释声明该类为持久类。将一个Javabean类声明为一 个实体的数据库表映射类,最好实现序列化.此时,默认情况下,所有的类属性都为映射到数据表的持久性字段.若在类中,添加另外属性,而非映射来数据库的, 要用下面的Transient来注解.
@Table (name="promotion_info") --持久性映射的表(表名="promotion_info).@Table是类一级的注解,定义在@Entity下,为实体bean映射表,目录和schema的名字,默认为实体bean的类名,不带包名.
@Id--注释可以表明哪种属性是该类中的独特标识符(即相当于数据表的主键)。
@GeneratedValue --定义自动增长的主键的生成策略.
@Transient --将忽略这些字段和属性,不用持久化到数据库.适用于,在当前的持久类中,某些属性不是用于映射到数据表,而是用于其它的业务逻辑需要,这时,须将这些属性进行transient的注解.否则系统会因映射不到数据表相应字段而出错.
@Temporal(TemporalType.TIMESTAMP)--声明时间格式
@Enumerated --声明枚举
@Version --声明添加对乐观锁定的支持
@OneToOne --可以建立实体bean之间的一对一的关联
@OneToMany --可以建立实体bean之间的一对多的关联
@ManyToOne --可以建立实体bean之间的多对一的关联
@ManyToMany --可以建立实体bean之间的多对多的关联
@Formula --一个SQL表达式这种属性是只读的,不在数据库生成属性(可以使用sum、average、max等)
@OrderBy --Many端某个字段排序(List) Hibernate注解详细说
Hibernate注解详细说明
1、@Entity(name="EntityName")
必须
name为可选,对应数据库中一的个表
2、@Table(name="",catalog="",schema="")
可选
通常和@Entity配合使用,只能标注在实体的class定义处,表示实体对应的数据库表的信息
name:可选,表示表的名称.默认地,表名和实体名称一致,只有在不一致的情况下才需要指定表名
catalog:可选,表示Catalog名称,默认为Catalog("").
schema:可选,表示Schema名称,默认为Schema("").
3、@id
必须
@id定义了映射到数据库表的主键的属性,一个实体只能有一个属性被映射为主键.置于getXxxx ()前.
4、@GeneratedValue(strategy=GenerationType,generator="")
可选
strategy:表示主键生成策略,有AUTO,INDENTITY,SEQUENCE 和 TABLE 4种,分别表示让ORM 框架自动选择,根据数据库的Identity字段生成,根据数据库表的Sequence字段生成,以有根据一个额外的表生 成主键,默认为AUTO
generator:表示主键生成器的名称,这个属性通常和ORM框架相关,例如,Hibernate可以指定 uuid等主键生成方式.
generator = "uuid" :由Hibernate基于128 位唯一值产生算法生成16 进制数值(编码后以长度32 的字符串表示)作为主键。
示例:
@Id
@GeneratedValues(strategy=StrategyType.SEQUENCE)
public int getPk() { return pk; }
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="S_Teacher") @SequenceGenerator(name="S_Teacher",allocationSize=1,initialValue=1, sequenceName="S_Teacher")
- Java项目中的分包
- 项目中的java集锦
- java中的项目!
- Java项目中的分包
- Java项目中的classpath
- java项目中的路径
- java项目中的加密
- java项目中的全局变量
- JAVA项目中的事务管理
- eclipse中的web项目引用java项目
- java项目中的路径调用
- java 读取项目中的配置文件
- Java获取项目中的路径
- Java获取项目中的路径
- Java项目迁移中的问题
- 清除JAVA 项目中的注释
- Java Web项目中的国际化
- java项目中的文件上传
- mysql数据库常用语句
- SSL工作原理(转)
- c++网络库
- 从Socket获取信息
- [推荐算法]基于用户的协同过滤算法
- java中的项目!
- TCP能检测到"断网""断电"事件吗(面试可以问倒很多人)?
- HDU 2090 算菜价
- php学习笔记---PHP生成二维码名片,并把名片内容添加到联系人中
- or1200处理器中QMEM模块的作用
- 【深入Java虚拟机】之七:Javac编译与JIT编译
- Is Python call-by-value or call-by-reference? Binding Names to Objects
- Basic表示一个简单的属性
- 寻找单链表中倒数第k个元素