Hibernate注解使用入门
来源:互联网 发布:access数据库制作软件 编辑:程序博客网 时间:2024/06/06 21:42
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; ...}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
@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使用注解
- 你可能不知道的提高react编写效率5倍的vscode插件- React/Redux/react-router Snippets
- hdu 1559
- 15 个最好的 Bootstrap 设计工具推荐
- 按照密码加密文件
- python爬虫
- Hibernate注解使用入门
- 分布式开发--分布式定时任务
- mineportal2:基于mailinbox,一个基本功能完备的整合个人件
- ShareSDK 一键分享的集成
- ThinkPad 在win10系统上设置Windows Hello
- Vue $ref用法
- SecureCRT配置跳板机
- 让owncloud hosting static web site
- 素数距离问题