《Hibernate学习笔记二》:表与实体类的映射方法
来源:互联网 发布:iphone蓝牙连不上mac 编辑:程序博客网 时间:2024/06/16 06:26
Hibernate学习笔记二:表与实体类的映射方法
在使用Hibernate 中,我们最好尽量使得实体类的名字与表的名字 、实体类的属性名与表的列名尽量相同,这样可以省去很多的麻烦 。但是,在我们的实际项目中,可能会遇到实体类的名字与表的名字不一致 的情况 。
当遇到这样情况,我们应该怎么办呢??
如果我们使用的是Annotation
,则比较好办。
看实际例子,如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
即当实体类的名字与表的名字不一致时,直接用@table(name=”tableName”)来进行指定即可。
如果实体类的属性名与表的列名不一致时 ,直接用@Column(name=”columnName”)来进行指定即可。
如果我们使用的是.xml映射文件,则方法如下:
<class name="Student" table="_Student"> <!-- 如果我们不写table,则默认表名与类名一致 --> <!-- 主键 --> <id name="id" column="id"> <!-- 主键的生成策略 --> <generator class="native"/> </id> <!-- 其他属性,name对应实体类的属性,column对应关系型数据库表的列 --> <property name="name" column="_name"/> <property name="age"/></class>
以上就是两种方法来解决实体类的名字和表中的名字不一致的方法。
如果我们不想实体类中的某属性持久化,应该怎么办呢??
解决方法就是:在Annotation中直接在该属性的get方法上添加@transient即可。在.xml文件中直接不写就好
例如,下面的例子就是将Teacher 类中的title不进行持久化。注意:title的getTitle方法上面添加的注解@transient
阅读全文
0 0
- 《Hibernate学习笔记二》:表与实体类的映射方法
- 《Hibernate学习笔记二》:表与实体类的映射方法
- Hibernate 学习笔记(二)-- 实体映射
- Hibernate总结之二实体与表的映射关系
- hibernate学习-实体类与数据库表映射
- Hibernate--实体类与表映射01
- Hibernate实体映射笔记
- hibernate引入装有实体类映射文件的配置方法
- hibernate实体类与数据表映射的两种方式
- Hibernate映射实体类自动导入方法
- Hibernate学习笔记——hibernate实体映射
- hibernate实体类映射
- hibernate 实体关系映射笔记
- Hibernate写实体映射方法
- Hibernate 二 实体映射(一对一映射)
- Hibernate 3.2 学习笔记 映射实体关联关系
- Hibernate学习笔记(八)【映射实体关系】
- Hibernate学习笔记(八)【映射实体关系】
- ftp推送
- 域名和ip访问产生的session不同
- 【转】浅谈对主成分分析(PCA)算法的理解
- windows 工具命令
- JSP中JSTL提供的函数标签EL表达式操作字符串的方法
- 《Hibernate学习笔记二》:表与实体类的映射方法
- 浏览器工作原理详解
- maven clean,install,build运行直接terminated
- ActiveMQ在C#中的应用
- Android自定义View-自定义属性
- opencv最新示例网站
- B树、B-树、B+树、B*树 红黑树
- 微信小程序 WXML、WXSS 和JS介绍及详解
- OSGI中blueprint简介