Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

What are the problems encountered in Hibernate application development?

2025-01-16 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >

Share

Shulou(Shulou.com)06/02 Report--

这篇文章主要讲解了"Hibernate应用开发遇到的问题有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Hibernate应用开发遇到的问题有哪些"吧!

首先,学习任何一门新的框架首先要理解它所解决的问题域。Hibernate是一个解决对象关系映射的框架(ORM),这说明ORM必须遵循一定的规则,否则就不可能形成框架。ORM遵循的基本规则是什么呢?用这样四句话进行总结:

1. 类型(class)对应表(table);

2. 属性(property)对应列(column), 必须有特殊属性对象标识符(id)对应主键(primary key);

3. 类型的关联(association)关系对应外键(foreign key);

4.类型的实例即对象(object)对应记录(record)或行(row)。

前三项描述的是静态特性,映射文件主要描述的就是这三项静态特性。ORM技术O在前,当然映射文件应以其对应的类型(class)为中心进行描述。 Gavin King在使用XML时喜欢用元素的属性来描述不具扩展前景的数据, 其中name属性描述java程序中JavaBean的属性(属性值大小写敏感)。映射文件的根元素用英文的mapping就可以了,但Gavin King不能脱俗,加上了Hibernate的前缀让人们记住他。

有了以上的准则,加上我们学会了文章一开始就列出的几个英文单词,Hibernate映射文件中常用的60%-70%已经印在了我们的脑袋。让我们用一个不包含关联关系的例子来验证:

package com.kettas.hibernate.entity; import java.io.Serializable; import java.util.Date; public class Student implements Serializable{ private Long id; private String name; private Date birthday; private char gender; public Student() { super(); } public Student(String name, Date birthday, char gender) { super(); this.name = name; this.birthday = birthday; this.gender = gender; } Date getBirthday() { return birthday; } void setBirthday(Date birthday) { this.birthday = birthday; } char getGender() { return gender; } void setGender(char gender) { this.gender = gender; } Long getId() { return id; } void setId(Long id) { this.id = id; } String getName() { return name; } void setName(String name) { this.name = name; } }

除了generator(生成器)和unsaved-value外,我们没有看到更多的英文词汇。generator说明主键的生成算法,unsaved-value的值让Hibernate能够判断对象是否为transient(瞬态)对象。

除了要写实体类型和映射文件,Hibernate应用还需要写什么呢?当然必须有一个Java应用使用Hibernate的API操作实体。这个应用知道操作哪些实体?如何和数据库通讯来完成持久化呢?通过配置文件就行了。所以配置文件里有描述连接数据库的属性和映射文件的元素。

感谢各位的阅读,以上就是"Hibernate应用开发遇到的问题有哪些"的内容了,经过本文的学习后,相信大家对Hibernate应用开发遇到的问题有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Development

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report