没有合适的资源?快使用搜索试试~ 我知道了~
JAVA高级软件工程师培训笔记
需积分: 9 10 下载量 61 浏览量
2008-09-17
08:26:09
上传
评论
收藏 259KB PDF 举报
温馨提示
试读
28页
JAVA高级软件工程师 培训笔记 学习资料 基础 重点
资源推荐
资源详情
资源评论
day1
一. hibernate 数据持久化组件
对象持久化(Object Persistence):把数据保存在永久存储介质中(数据库)
1.为什么要持久化:
a.内存是暂时存储设备,断电后数据易丢失
b.网络传输无法传输内存中的对象,需要将对象外化
c.内存中数据查询,组织不方便
d.内存只能存储少量数据
2.怎样持久化
a.对象序列化 --> 二进制流
合并存储,粒度大,无规律
不支持检索
只适合少数个别对象的序列化
b.用 JDBC/EJB/ORM 将数据存入数据库
用 JDBC:(Java DB Connection)
优点:底层开发,控制力强(细); 效率最高; 标准的(SQL)JDBC,有可移植
性
缺点:过于复杂; 代码量大; 可维护性差(代码重用性低);
用 EJB:(Entity Java Bean)
优点:直接自动生成 JDBC 代码; 持久对象(PO)的状态由服务器管理; 声
明式的事务
1
缺点:功能不全(特殊的组件,不能做继承关系); EJB 容器是侵入性容器,
失去 OO 的优点; 调试更复杂
用 ORM:(object relation mapping)对象关系映射
优点:自动生成 JDBC(代码量下降); 使用(plain oldest java
object---pojo),非侵入型; 提供状态管理; 难度下降,不需要容器
缺点:由于开源, 文档少; bug 多; 技术支持差
结论: 用 java 开发-->必须将数据持久化-->用数据库持久化-->须用 ORM-->需要用
Hibernate
二. Hibernate
1.POJO 类
plain oldest java object,就是标准的 Java Bean。
2.Hibernate
Hibernate -->一个可以自动的根据 xml 完成对象关系映射,并持久化到
数据库的开源组件。其底层也是由 JDBC 实现的。hibernate 是通过 xml 文件的配置,对数
据库的底层的方言,以及数据库连接所需的信息,以及连接数据库的驱动。
hibernate 的系统配置文件
hibernate.cfg.xml -->与数据库建立连接(一般放在项目的根目录下)
XXXX.hbm.xml-->用来建立类与表之间的映射关系(一般将映射类的 xml 文件和
实体类放在一起)
3.Hibernate API
Configuragion 读配置文件(默认名:hibernate.cfg.xml)
(org.hibernate.cfg.Configuration)
2
生成 SessionFactory:SessionFactory 重量级的对象, 线程安全的
(org.hibernate.SessionFactory),生成 Session .
Session,相当于 JDBC 中的 Connection (org.hibernate.Session),轻量级的
对象,线程不安全(原则上一个线程一个 Session,不要放在并发的环境中)
生成 Transaction
Transaction 管理事务的对象 (org.hibernate.Transaction)
Query 查询对象,提供面向对象的查询语言(HQL)
4.使用 hibernate 编程步骤
1,配置环境,加载 hibernate 的 jar 文件,以及连接数据库连接使用的
jar 文件,并配置 CLASSPATH 环境变量。
2,写 hibernate 所需的配置文件,hibernate.cfg.xml ,XXX.hbm.xml
3,写 POJO 类
4,调用 hibernate API。
1)使用 Configuration 对象的 buildSessionFactory()方法创建
SessionFactory 对象
2)使用 SessionFactory 对象 openSession()方法创建 Session 对象。
3)使用 Session 的相应方法来操作数据库,将对象信息持久化到数据
库。
5. HQL 语句
Query q = s.createQuery("from Account where actNo=:actNo");
//from 类名 where 属性名=:shuxingming
q.setLong("actNo",12345);//设置属性名,并赋值
3
q.uniqueResult()//获得匹配 HQL 的唯一属性
附: 1.环境配置:
a. 类库
*** 导入 hibernate 库文件 ***
1、在 eclipse 中建立一个 java 工程,如:hbn
2、在工程 hbn 的属性--Build Path 中选择 Add Libraries
3、在 Add Libraries 窗口中选择 User Library 点 next 按钮
4、在 User Library 窗口中点 User Libraries ...按钮
5、在 User Libraries 窗口中,点 new 按钮
6、在 New user library 窗口中,填写一个 User libary name(如
:hbnlib,注意不要选择 System libary 复选框),点 OK 按钮回到 User Liberies 窗口
7、在 User Liberaries 窗口中选择刚刚创建的 hbnlib,点 Add jars 按
钮
8、在打开的文件选择窗口中找到解压好的 hibernate 的库文件,全部
选中,点"打开"按钮,返回 User Libraries 窗口
9、在 User Libraries 窗口中点 OK 按钮,返回 User Library 窗口;
再点 Finish 按钮,结束操作
b. 驱动
c. 映射文件/配置文件 的模板
d. Eclips 导入 2 个 DTD 文件
*** 导入 hibernate 库文件 ***
1、在 eclipse 中建立一个 java 工程,如:hbn
4
2、在工程 hbn 的属性--Build Path 中选择 Add Libraries
3、在 Add Libraries 窗口中选择 User Library 点 next 按钮
4、在 User Library 窗口中点 User Libraries ...按钮
5、在 User Libraries 窗口中,点 new 按钮
6、在 New user library 窗口中,填写一个 User libary name(如
:hbnlib,注意不要选择 System libary 复选框),点 OK 按钮回到 User Liberies 窗口
7、在 User Liberaries 窗口中选择刚刚创建的 hbnlib,点 Add jars 按
钮
8、在打开的文件选择窗口中找到解压好的 hibernate 的库文件,全部
选中,点"打开"按钮,返回 User Libraries 窗口
9、在 User Libraries 窗口中点 OK 按钮,返回 User Library 窗口;
再点 Finish 按钮,结束操作
2. hibernate.cfg.xml 的写法
<?xml version="1.0"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- 与数据库建立连接 -->
<hibernate-configuration>
<session-factory>
<property name="show_sql">true</property><!--显示 sql 语句-->
5
剩余27页未读,继续阅读
资源评论
adrian8
- 粉丝: 1
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功