hibernate学习笔记四
来源:互联网 发布:博客套利软件 编辑:程序博客网 时间:2024/05/16 04:39
hibernate注解:相当于直接在实体类中注释,从而省去了xml的配置
@Entity //在class 类名上方定义 表示这是一个实体类,用于映射表
@Table //在class 类名上方定义对应数据库表名
@Table(name = "product_")
以下注解都在getset方法上方定义:
@Id
@GeneratedValue//数据库主键自动增长 不会重复 在主键对应属性上方定义@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column //属性列名 @Column(name = "id")不需要每条属性都加
修改过后 再修改hibernate.cfg.xml中的mapping resource
位mapping class
导入的包为javax包
hibernate里常用注解包括,类注解,属性注解,关系注解,其他的注解
类注解:@Entity 表示这是一个实体类,用于映射表
@Table(name = "product_") 表示这是一个类,映射到的表名:product_
属性注解:
@Id 表示这是主键
@GeneratedValue(strategy = GenerationType.IDENTITY) 表示自增长方式使用mysql自带的
@Column(name = "id") 表示映射到字段id
多对一注解:
@ManyToOne
@JoinColumn(name="cid")
在相应的对应类的getset方法上定义
一对多注解:
@OneToMany 表示一对多,fetch=FetchType.EAGER 表示不进行延迟加载(FetchType.LAZY表示要进行延迟加载)
@JoinColumn(name="cid") 表示映射字段
多对多:
@ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
@JoinTable(
name="user_product",
joinColumns=@JoinColumn(name="pid"),
inverseJoinColumns=@JoinColumn(name="uid")
)
XML配置方式:
优:容易编辑,配置比较集中,方便修改,在大业务量的系统里面,通过xml配置会方便后人理解整个系统的架构,修改之后直接重启应用即可
缺:比较繁琐,配置形态丑陋, 配置文件过多的时候难以管理
注解方式:
优:方便,简洁,配置信息和 Java 代码放在一起,有助于增强程序的内聚性。
缺:分散到各个class文件中,所以不宜维护, 修改之后你需要重新打包,发布,重启应用。
@Entity //在class 类名上方定义 表示这是一个实体类,用于映射表
@Table //在class 类名上方定义对应数据库表名
@Table(name = "product_")
以下注解都在getset方法上方定义:
@Id
@GeneratedValue//数据库主键自动增长 不会重复 在主键对应属性上方定义@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column //属性列名 @Column(name = "id")不需要每条属性都加
修改过后 再修改hibernate.cfg.xml中的mapping resource
位mapping class
导入的包为javax包
hibernate里常用注解包括,类注解,属性注解,关系注解,其他的注解
类注解:@Entity 表示这是一个实体类,用于映射表
@Table(name = "product_") 表示这是一个类,映射到的表名:product_
属性注解:
@Id 表示这是主键
@GeneratedValue(strategy = GenerationType.IDENTITY) 表示自增长方式使用mysql自带的
@Column(name = "id") 表示映射到字段id
多对一注解:
@ManyToOne
@JoinColumn(name="cid")
在相应的对应类的getset方法上定义
一对多注解:
@OneToMany 表示一对多,fetch=FetchType.EAGER 表示不进行延迟加载(FetchType.LAZY表示要进行延迟加载)
@JoinColumn(name="cid") 表示映射字段
多对多:
@ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)
@JoinTable(
name="user_product",
joinColumns=@JoinColumn(name="pid"),
inverseJoinColumns=@JoinColumn(name="uid")
)
XML配置方式:
优:容易编辑,配置比较集中,方便修改,在大业务量的系统里面,通过xml配置会方便后人理解整个系统的架构,修改之后直接重启应用即可
缺:比较繁琐,配置形态丑陋, 配置文件过多的时候难以管理
注解方式:
优:方便,简洁,配置信息和 Java 代码放在一起,有助于增强程序的内聚性。
缺:分散到各个class文件中,所以不宜维护, 修改之后你需要重新打包,发布,重启应用。
个人体会: 小项目,参与人数不多,不复杂的用注解,开发快速。 复杂项目,多人交互,配置量大,维护复杂度高的,用配置文件。
关于hibernate注解,可以去搜索hibernate注解大全。
阅读全文
0 0
- hibernate学习笔记四
- Hibernate学习笔记四
- hibernate学习笔记(四)
- hibernate学习笔记四
- hibernate学习笔记四
- Hibernate学习笔记(四)
- Hibernate学习笔记(四)
- hibernate学习笔记(四)
- Hibernate学习笔记之四
- Hibernate学习笔记(四)
- Hibernate学习笔记(四)
- [学习]Hibernate 3.2学习笔记之四
- hibernate3 学习笔记(四) hibernate 介绍(转)
- Hibernate 学习代码/笔记(四)(一对多)
- hibernate学习笔记之四(Hibernate中的类型)
- 《Hibernate学习笔记四》:Hibernate核心接口介绍
- 《Hibernate学习笔记四》:Hibernate核心接口介绍
- Hibernate 笔记大全四
- SQL Assistant简介
- 用c语言链接MySQL数据库出现Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'
- opencv学习之 特征检测与匹配
- Android adb.exe程序启动不起来,如何处理
- 文章标题
- hibernate学习笔记四
- 顺时针打印矩阵元素
- 几种简单的负载均衡算法及其Java代码实现
- CBoard环境配置(JRE/Tomcat/MySQL)
- 打开ubuntu终端的两个方法【最快速】
- AWS ELB技术要点
- 使用dhcp服务配置虚拟机网络
- 简单选择排序java篇
- 【四方向型】虚拟摇杆的构造及素材