一、Hibernate简介:

Hibernate作者——Gavin King
Hibernate创始人
《 Hibernate in action 》作者
EJB 3.0的Entity bean specification的实际领导人(sun任命的领导人是Linda DeMichiel)
参加了XDoclet和Middlegen的开发
2003年9月加入JBoss,全职进行Hibernate开发
 
二、Hibernate
1、一个开发源代码的对象关系映射框架
2、对JDBC进行了非常轻量级的对象封装
3、将JavaBean对象和数据库的表建立对应关系
 
三、Hibernate优势
1、Hibernate 是一个优秀的Java 持久化层解决方案
2、是当今主流的对象—关系映射工具
3、Hibernate 简化了JDBC 繁琐的编码
Session session = HiberanteUtil.getSession();
Query query = session.createQuery("from User");
List<User> users =(List<User>)query.list();

注:JDBC的缺点:

(1)、开发效率低
(2)、代码冗余
     pstmt的setXX方法
     方法参数冗余的getXX方法
(3)、如果POJO的属性很多,代码增加
(4)、重复性工作多
4、Hibernate 将数据库的连接信息都存放在配置文件中
 
四、持久化与ORM3-2
1、持久化层:
JDBC 就是一种持久化机制。
将程序数据直接保存成文本文件也是持久化机制的一种实现。
在分层结构中,DAO 层(数据访问层)也被称为持久化层。
2、持久化完成的操作:
将对象保存到关系型数据库中。
将关系型数据库中的数据读取出来, 以对象的形式封装。
 
五、ORM(Object Relational Mapping,对象关系映射)
1、编写程序的时候,以面向对象的方式处理数据
2、保存数据的时候,却以关系型数据库的方式存储
ORM解决方案包含下面四个部分:
1、在持久化对象上执行基本增、删、改、查操作的API
2、用于对持久化对象或属性查询的一种语言或者API
3、用于实体关系映射的工具
4、能够与事务对象交互、执行检查、延迟加载以及其他优化功能
 
六、Hibernate中实体对象的三种状态
实体对象的生命周期是Hibernate 应用中的一个关键概念
 
实体对象的三种状态:
1、瞬时状态(Transient)
刚用new语句创建,还没有被持久化,且不处于Session的缓存中
2、持久状态(Persistent)
已经被持久化,且加入到Session的缓存中
3、游离状态(Detached)
已经被持久化,但不再处于Session的缓存中

Java_Web三大框架之Hibernate 入门(一)的更多相关文章

  1. 三大框架之hibernate入门

    hibernate入门   1.orm      hibernate是一个经典的开源的orm[数据访问中间件]框架           ORM( Object Relation Mapping)对象关 ...

  2. Java_Web三大框架之Hibernate+HQL语言基础

    12.1 HQL语言基础Hibernate查询语言为HQL(Hibernate Query Language),可以直接使用实体类名及属性.HQL语法类似于SQL,有SQL的关键词如select.fr ...

  3. Java_Web三大框架之Hibernate操作数据库(三)

    使用Hibernate操作数据库需要七个步骤: (1)读取并解析配置文件 Configuration conf = newConfiguration().configure(); (2)读取并解析映射 ...

  4. Java_Web三大框架之Hibernate+jsp+HQL分页查询

    分页查询无处不在.使用Hibernate+jsp+HQL进行分页查询. 第一步:编写房屋实体类和House.hbm.xml映射. /* * 房屋实体类 */ public class House { ...

  5. Java_Web三大框架之Hibernate+jsp+selvect+HQL查询数据

    俗话说:"好记性不如烂笔头".本人学习Hibernate也有一个星期了,对Hibernate也有一个初步的了解.下面对Hibernate显示数据做个笔记,使用租房系统的Hibern ...

  6. Java_Web三大框架之Hibernate+jsp+selvect+HQL注册用户

    Hibernate比SQL语句简单多了,代码冗余少,切方便简洁明了.下面用Hibernate+jsp+selvect+HQL来实现注册用户. 第一步:编写用户实体类和Users2.hbm.xml映射. ...

  7. Java_Web三大框架之Hibernate+jsp+selvect+HQL登入验证

    刚开始接触Hibernate有些举手无措,觉得配置信息太多.经过一个星期的适应,Hibernate比sql简单方便多了.下面做一下Hibernate+jsp+selvect+HQL登入验证. 第一步: ...

  8. Java_Web三大框架之Hibernate增删改查

    下面介绍一下Hibernate的增删改查. 第一步:编写用户实体类以及User.hbm.xml映射 package com.msl.entity; public class User { privat ...

  9. Java_Web三大框架之Hibernate配置文件(二)

    下面介绍一下编写Hibernate的配置文件,使用Hibernate操作数据库. 开始部署:下载需要的jar包               下载Hibernate           Hibernat ...

随机推荐

  1. Java中原始数据类型存放位置理解

    原始数据类型的变量存放在栈还是堆,应该由上下文去决定. 如下所示的局部方法中,定义了本地变量a,且为原始数据类型,所以存放在栈中. public void func(){ int a = 3; } 再 ...

  2. RAR5格式不同词典大小下压缩率的简单测试

    一个VMWare虚拟机安装Win7后的磁盘文件进行压缩,已经进行了清理处理,原始大小为12.1GB 词典大小  压缩后大小  压缩比率 32MB 4.08GB 33.7% 256MB 3.88GB 3 ...

  3. spring mvc日期转换(前端到后端,后端到前端)

    在做web开发的时候,页面传入的都是String类型,SpringMVC可以对一些基本的类型进行转换,但是对于日期类的转换可能就需要我们配置. 1.如果查询类使我们自己写,那么在属性前面加上@Date ...

  4. 《WF in 24 Hours》读书笔记 - Hour 2(1) - 第一个Workflow程序

    创建第一个Workflow项目 1. 创建Workflow项目 – 选择Workflow Console Application 2. 添加CodeActivity 3. 打开CodeActivity ...

  5. 如何定义StrokeIt手势 常用StrokeIt手势大全

    1 最小化,最大化,最小化所有(显示桌面) 斜向上表示最大化或者还原,斜向下表示最小化,适用于任务管理器和一般应用程序(有这三个按钮的都可以),先斜向下再斜向上表示显示桌面,这个在WIN7系统中不太实 ...

  6. Azure Event hub usage

    1. create event hub on azure watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/40 ...

  7. [PsTools]psexec.exe使用范例-运行远程电脑程序(exe、bat等)

    前置条件 先下载psexec.exe.放置到C盘根文件夹 下载地址:http://download.csdn.net/detail/whylaughing/8885893 命令范例:(注意空格) C: ...

  8. iOS页面右滑返回的实现方法总结

    1.边缘触发的系统方法 ①系统返回按钮 self.navigationController.interactivePopGestureRecognizer.enabled = YES;  ②自定义返回 ...

  9. 【Android自己定义View实战】之自己定义超简单SearchView搜索框

    [Android自己定义View实战]之自己定义超简单SearchView搜索框 这篇文章是对之前文章的翻新,至于为什么我要又一次改动这篇文章?原因例如以下 1.有人举报我抄袭,原文链接:http:/ ...

  10. 分布式缓存Redis应用场景解析

    Redis的应用场景非常广泛.虽然Redis是一个key-value的内存数据库,但在实际场景中,Redis经常被作为缓存来使用,如面对数据高并发的读写.海量数据的读写等. 举个例子,A网站首页一天有 ...