- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
hibernate概述和第一个hibernate程序要点
Hibernate基础
目 录
1 Hibernate概述
2 第一个Hibernate程序
3 Hibernate的配置文件
4 深入理解持久化对象
5 Hibernate的映射文件
6 JPA Annotation介绍
7 本讲小结
Hibernate概述
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。
最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
JDBC简介
JDBC(Java Data Base Connectivity)是一种用于执行SQL语句的Java API。
JDBC提供的主要接口:
DriverManager类
Connection类
Statement类
PreparedStatement类
ResultSet类
使用JDBC访问数据库的步骤
(1)加载JDBC驱动
(2)实例化数据库连接驱动类
(3)建立数据库连接,取得Connection对象
(4)建立Statement对象或PreparedStatement对象.
(5)执行SQL语句
(6)访问结果记录集ResultSet对象
(7)依次将ResultSet,Statement,PreparedStatement,
Connection对象关闭,释放所占用的资源。
对直接使用JDBC的反思
直接使用JDBC操作数据库的步骤很繁琐。
JDBC操作的是关系型数据库。
用JAVA开发程序,则使用面向对象的思想。
Hibernate正是在这两种不同的模型之间建立关联,Hibernate给我们提供了利用面向对象的思想来操作关系型数据的接口。
持久化和持久化层
在Java中将对象自动持久化到数据库中,我们需要了解两个概念。
持久化
就是对数据和程序状态的保持。
大多数情况下特别是企业级开发应用时,数据持久化往往也就意味着将内存中的数据保存到磁盘上加以固化,而持久化的实现过程则大多通过各种关系型数据库来完成的。
持久化层
在目前的企业级应用系统设计中,MVC为主要的系统架构模式。MVC中的M层包含了复杂的业务逻辑、数据逻辑以及数据存取机制,如JDBC的连接、SQL生成和Statement创建,还有Result结果集的读取等。
从业务层分离出的持久化层
持久化和持久化层
持久化和持久化层
持久化层
持久化层封装了数据访问细节,为业务逻辑层提供了面向对象的API。完善的持久化层应该达到以下目标:
代码可重用性高,能够完成所有的数据库访问操作。
如果需要的话,能够支持多种数据库平台。
具有相对独立性,当持久化层的实现发生变化,不会影响上层的实现。
那么,如何实现持久化层呢?对于复杂的数据模型,直接通过JDBC编程来实现健壮的持久化层需要有专业的知识,对于企业应用的开发人员,花费大量时间从头开发自己的持久化层不是很可行。
关系型数据库和面向对象的冲突
面向对象是从软件工程基本原则(如耦合、聚合和封装)的基础上发展起来的。
关系数据库则是从数学理论发展而来的,两套理论存在显著的区别。
Java是完全面向对象的语言,这个冲突就表现的越发明显。
如何进行对象-关系数据库的匹配
public class User {
private String name;
private String password;
private List address;
………
}
create table tbl_user (
name varchar(255) not null ,
password varchar(255),
……….
primary key (name)
)
对象
关系数据库
类的属性(基本类型)
表的列
类
表
1:n/n:1
外键
n:m
关联表
如何进行对象-关系数据库的匹配?
ORM介绍
ORM的全称是Object/Relation Mapping,即对象/关系映射。
ORM是一种规范、模型、思想
具体的ORM框架可作为应用程序和数据库的桥梁。
目前ORM的产品非常多,比如Apache组织下的OJB,Oracle的TopLink、JDO和JPA等,当然还包括本章介绍的Hibernate。
ORM带来了什么
ORM并不是一种具体的产品,而是一类框架的总称,它概述了这类框架的基本特征:完成面向对象的程序设计语言到关系数据库的映射。
基于ORM框架完成映射后,既可利用面向对象程序设计语言的简单易用性,又可利用关系数据库的技术优势
文档评论(0)