Hibernate注解使用入门
来源:互联网 发布:windows的历史 编辑:程序博客网 时间:2024/06/13 02:23
*hibernate在3.2以后也引入了注解机制,注解的使用大大简化了我们的实体xml繁琐的配置操作,让程序员彻底从复杂的xml配置解放出来,当然注解本身也加大了代码的可读性和维护工作,但本身还是比较优秀的机制,*
1、什么是JPA
JPA是一种持久化标准,我们可以简单的理解为就是我们ORM框架的注解标准,
JPA就是javax.persistenceAPI,简称JPA,是sun公司设计的一套持久化开发的标准体系,有点想jdbc,但是jdbc只是接口没有实现,而JPA不同,他在hibernate之后产生,是sun公司希望把各大ORM框架的标准进行统一的一个设计理念,JPA在我们java里面就已经有一部分实现了。所以类似hibernate的各大持久化框架就对JPA进行了支持,所以我们使用hibernate注解实际上就是JPA,
hibernate的注解是继承自我们的JPA,但是进行功能的扩展。
2、注解入门
@Entity //该类被hibernate当做实体给管理
@Table(name=”xx_plat_role”) //对应数据库的表
catalog=”“, schema=”” 默认都为空
表示数据库的名字,并且对数据库的支持情况不同
@Id //配置主键
@GeneratedValue(strategy=GenerationType.IDENTITY) //自增策略
Strategy表示主键自增策略,取值有:
1.GenerationType.AUTO:根据底层数据库自动选择(默认)
2.GenerationType.INDENTITY:根据数据库的Identity字段生成
3.GenerationType.SEQUENCE:使用Sequence来决定主键的取值
mysql用INDENTITY, oracle就用SEQUENCE,AUTO是SQLserver使用
4.GenerationType.TABLE:使用指定表来决定主键取值,结合@TableGenerator使用
@Entity @Table(name="extra_city")@TableGenerator(name = "tg1", table = "extra_table_seq", allocationSize = 10, initialValue = 1, pkColumnValue = "city")public class City { @Id @GeneratedValue(generator = "tg1", strategy = GenerationType.TABLE) private int id; ...}
@Column(name=”role_name”, columnDefinition=”VARCHAR”, length=20) //关联字段名和数据类型
name:可选,表示数据库表中该字段的名称,默认情形属性名称一致。
Nullable:可选,表示该字段是否允许为null,默认为true。
Unique:可选,表示该字段是否是唯一标识,默认为false。
Length:可选,表示该字段的大小,仅对String类型的字段有效,默认值255。
Inserable:可选,表示在ORM框架执行插入操作时,该字段是否应出现INSERT语句中,默认为true。
Updateable:可选,表示在ORM框架执行更新操作时,该字段是否应该出现在UPDATE语句中,默认为true。对于一经创建就不可以更改的字段,改属性非常有用,如对于birthday字段。
hibernate管理该实体类
通过测试发现一个问题:
我们利用xml配置的hibernate是会自动创建表的,
而利用JPA注解的时候,在列的注解上:
@Column(name=”role_id”, columnDefinition=”VARCHAR”,length=20)
如果有设置类型则不会建表,
去掉类型和长度则会自动建表,如果是date和datetime也是能自动建表,
- Hibernate注解使用入门
- Hibernate注解使用入门
- Hibernate注解入门
- hibernate 注解入门实例
- hibernate(注解)入门实例
- hibernate注解annotation入门
- hibernate注解annotation入门了解
- hibernate 注解的使用
- Hibernate中使用注解
- Hibernate注解使用
- hibernate注解简单使用
- Hibernate注解使用
- hibernate使用注解
- Hibernate注解的使用
- Hibernate使用注解方式
- Hibernate 注解使用
- Hibernate 注解使用总结
- Hibernate使用注解
- 【Scikit-Learn 中文文档】预测目标 (y) 的转换
- 使用POI同时对Excel文件进行读和写操作时避免Invalid header signatu
- Lintcode:旋转字符串
- REDIS系列之五大对象原理
- Eclipse隐藏引用的jar包
- Hibernate注解使用入门
- RSA加密与数字签名
- Java需要补充的部分
- Hessian Hello World
- Eclipse优化
- java多线程之多线程的线程安全问题
- 【Scikit-Learn 中文文档】成对的矩阵, 类别和核函数
- 正则表达式(笔记二)
- Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x1