java的三大框架(三)---Hibernate】的更多相关文章

一.什么是映射 这里所说的映射就是对象关系映射:将对象数据保存到数据库中,同时可以将数据库数据读入对象中,开发人员只对对象进行操作就可以完成对数据库数据的操作. 二.什么是基本映射 知道了什么是映射,那么我们先来看一下最基本的映射关系——基本映射,即根据表结构创建相应实体类 例如:还是以Mysql数据库为例,进行说明.有如下一张表: 建立相应的实体类:User public class User { private String id; private String username; publ…
·定义:Java三大框架主要用来做WEN应用.Struts主要负责表示层的显示: Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作): Hibernate主要是数据持久化到数据库. (1)Struts框架:struts是开源软件.使用Struts的目的是为了帮助我们减少在运用MVC设计模型来 开发Web应用的时间.如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择. (2)Spring框架:这是一个解决了许多在J2EE开发中常见的…
什么是Hibernate? Hibernate是基于ORM(O:对象,R:关系,M:映射)映射的持久层框架,是一个封装JDBC的轻量级框架,主要实现了对数据库的CUPD操作. 注:CRUD是指在做计算处理时的增加(Create).查询(Retrieve)(重新得到数据).更新(Update)和删除(Delete)几个单词的首字母简写.主要被用在描述软件系统中数据库或者持久层的基本操作功能. Hibernate中的核心接口和类 Hibernate的核心类和接口一共有6个,分别为:Session.S…
hibernate入门   1.orm      hibernate是一个经典的开源的orm[数据访问中间件]框架           ORM( Object Relation Mapping)对象关系映射      通过 对象模型 操作 数据库关系模型 hibernate处于项目的持久层位置,因此又称为持久层框架   2.hibernate核心组件            SessionFactory [整个数据库的操作] 重量级组件      Session[对数据库的一次业务操作] -- 轻…
接下来这几章节学习的是Hibernate,Hibernate的主要作用就是用来和数据库进行连接,简化了JDBC的操作. 首先,我们创建项目,然后把Hibernate的jar包和sqlserver的驱动导入进去. 接下来,我们须要写一个实体类:User package cn.itcast.hibernate.domain; import java.util.Date; public class User { private int id; //private String name; privat…
在java中.类之间能够有继承关系.可是在数据库中是没有继承关系的.只是Hibernate是为了把面向对象的关系反映到数据库中.Hibernate为我们提供了3种方案: 第一.一个继承体系放在一张表中(就是把父类与子类的全部属性反映在一张表中) 第二.每一个子类映射一张表,然后与父类相应的表用主键一对一关联起来 第三.每一个详细类映射一张表 我们如果有三个类:Employee(员工).Skill(技术).Sales(销售) 员工分为技术人员和销售人员两种类型,技术和销售类继承员工类: Emplo…
分页查询无处不在.使用Hibernate+jsp+HQL进行分页查询. 第一步:编写房屋实体类和House.hbm.xml映射. /* * 房屋实体类 */ public class House { private int id;//房屋id private HouseType type;//房屋类型 private Users2 user;//用户 private Street street;//街道 private String title;//标题 private String descr…
Hibernate比SQL语句简单多了,代码冗余少,切方便简洁明了.下面用Hibernate+jsp+selvect+HQL来实现注册用户. 第一步:编写用户实体类和Users2.hbm.xml映射. /* * 用户实体类 */ public class Users2 { private int id;//用户id private String name;//用户昵称 private String password;//用户密码 private String telephone;//用户号码 p…
下面介绍一下编写Hibernate的配置文件,使用Hibernate操作数据库. 开始部署:下载需要的jar包               下载Hibernate           Hibernate 的官方主页是www.hibernate.org           推荐下载hibernate-distribution-3.3.2.GA-dist.zip         Hibernate包目录结构               部署jar包               hibernate3.…
目录 Hibernate框架概述 什么是框架 hibernate简介(JavaEE技术三层架构所用到的技术) hibernate是什么框架 ORM hibernate好处 Hibernate基本使用 下载框架 Hibernate目录 使用 常见配置 xxx.hbm.xml映射配置 hibernate.cfg.xml核心配置 核心API Configuration SessionFactory sessionFactory简介 hibernate.cfg.xml 添加,配置连接池 查看日志 工具类…
相对于上一篇中的代码编写HibernateUtil类以提高程序的执行速度 首先,仍然要写一个javabean(User.java): package cn.itcast.hibernate.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public voi…
这里要说的是Hibernate的关联关系的级联操作,使用cascade属性控制. 依旧用部门和员工举例.多个员工相应一个部门(多对一关联关系) 员工类:Employee.java package cn.itcast.hibernate.domain; public class Employee { private int id; private String name; private Department depart; public int getId() { return id; } pu…
Hibernate中的三种状态   瞬时状态:刚创建的对象还没有被Session持久化.缓存中不存在这个对象的数据并且数据库中没有这个对象对应的数据为瞬时状态这个时候是没有OID. 持久状态:对象经过Session持久化操作,缓存中存在这个对象的数据为持久状态并且数据库中存在这个对象对应的数据为持久状态这个时候有OID. 游离状态:当Session关闭,缓存中不存在这个对象数据而数据库中有这个对象的数据并且有OID为游离状态. 注:OID为了在系统中能够找到所需对象,我们需要为每一个对象分配一个…
什么是Hibernate中的关联映射? 简单来说Hibernate是ORM映射的持久层框架,全称是(Object Relational Mapping),即对象关系映射. 它将数据库中的表映射成对应的对象,以对象的形式展现,这样我们就可以通过映射的对象来对数据库中的数据进行间接的操作. 关联映射是将数据库中的表映射成与之相对应的对象,当你对这个对象进行操作的时候,Hibernate会对数据库中对应的表执行相应的操作,你对该实体的操作实际上就是在间接的操作数据库中与之相对应的表. Hibernat…
Struts主要负责表示层的显示 Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作) Hibernate主要是数据持久化到数据库 再用jsp的servlet做网页开发的时候有个 web.xml的映射文件,里面有一个mapping的标签就是用来做文件映射的.在浏览器上输入URL得知的时候,文件就会根据你写的名称对应到一个JAVA文件,根据java文件里编写的内容显示在浏览器上,就是一个网页. 一 .Struts框架:struts是开源软件.使用Struts的目的是为了帮助我们减…
综述:Hibernate的作用就是让实体类与数据库映射,使数据持久化,用于替代JDBC,使我们不致于写那么多sql语句代码. 1. 首先在官网www.hibernate.org下载hibernate包, 关于如何下载网上也有详细的教程.下载后解压出来,其中required里面的jar包全部是必须的,可以都放在一个library中,然后再加上mysql(或其他数据库)的驱动包,就是我们需要的所有类库了. 2. 类库全部添加进来之后就是框架的配置问题了.这里主要配置两部分:hibernate.cfg…
搭建过程因人而异,我的搭建过程大致是这样的: 1.创建一个javaweb项目: 2.导入Spring框架,上图: 2.1: 2.2: 2.3: 3.导入struts2框架,上图: 3.1: 3.2: next: 3.3: 4.导入Hibernate框架,说明:由于hibernate属于持久层,和数据库密切相关,所以需要我们提前出创建好数据库对应视图,然后再开始下面的操做.上图: 4.1: 4.2: 4.3: 4.4: 4.5: 4.6: 4.7:利用数据库相关表和hibernate的orm生成实…
使用Hibernate操作数据库需要七个步骤: (1)读取并解析配置文件 Configuration conf = newConfiguration().configure(); (2)读取并解析映射信息,创建SessionFactory SessionFactory sf = conf.buildSessionFactory(); (3)打开Session Session session = sf.openSession(); (4)开始一个事务(增删改操作必须,查询操作可选) Transac…
现在许许多多的初学者和程序员,都在趋之若鹜地学习Web开发的宝典级框架:Struts2,Spring,Hibernate.似乎这些框架成为了一个人是否精通Java,是否会写J2EE程序的唯一事实标准和找工作的必备基础. 然而,如果在面试的时候问这些程序员,你们为什么要学习这些框架?这些框架的本质到底是什么?似乎很少很少有人能够给我非常满意的答复.因为他们都在为了学习而学习,为了工作而学习,而不是在真正去深入了解一个框架.其实所有的人都应该思考这样的问题:为什么要学习框架?框架到底给我带来了什么?…
一.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进行了非常轻量级的…
目录 Hibernate生成策略与缓存策略 主键生成策略 主键分类 主键的生成策略 持久化 什么是持久化 什么是持久化类 持久化类编写规则 持久化类的划分 三种状态区分 持久态对象特征 一级缓存 什么是缓存 一级缓存 一级缓存特点 一级缓存内部结构 事务管理 什么是事务 事务特性 事务的隔离级别 Hibernate设置事务的隔离级别 事务业务层连接 Hibernate生成策略与缓存策略 主键生成策略 主键分类 自然主键 主键本身就是表中的一个字段 实体中一个具体的属性,对象本身唯一的特性 创建一…
1. Hibernate3 提供了属性的延迟加载功能? 当Hibernate在查询数据的时候,数据并没有存在与内存中,当程序真正对数据的操作时,对象才存在与内存中,就实现了延迟加载,他节省了服务器的内存开销,从而提高了服务器的性能. 2.Hibernate中怎样实现类之间的关系?(如:一对多.多对多的关系) 类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one.one-to-many.many…
这里举样例用的是:部门与员工的关系. 一个部门能够相应多个员工,这就是非常明显的多对一关联关系. 我们须要建立两个实体类:员工(Employee).部门(Department) 员工类:Employee.java(在这里边我们添加了一个Department类型的属性,用来做关联) package cn.itcast.hibernate.domain; public class Employee { private int id; private String name; private Depa…
12.1 HQL语言基础Hibernate查询语言为HQL(Hibernate Query Language),可以直接使用实体类名及属性.HQL语法类似于SQL,有SQL的关键词如select.from.order by.count().where等等.不同的是HQL是一种完全面向对象的语言,能够直接查询实体类及属性.12.1.1 HQL语法HQL语法类似于SQL,是一种select...from...的结构.其中,from后跟的是实体类名,而不是表名.select后面跟的可以是实体对象,也可…
俗话说:"好记性不如烂笔头".本人学习Hibernate也有一个星期了,对Hibernate也有一个初步的了解.下面对Hibernate显示数据做个笔记,使用租房系统的Hibernate+jsp+selvect. 第一步:编写房屋实体类 /* * 房屋实体类 */ public class House { private int id;//房屋id private String title;//标题 private String description;//描述 private Str…
刚开始接触Hibernate有些举手无措,觉得配置信息太多.经过一个星期的适应,Hibernate比sql简单方便多了.下面做一下Hibernate+jsp+selvect+HQL登入验证. 第一步:编写用户实体类和配置用户Users2.hbm.xml映射. /* * 用户实体类 */ public class Users2 { private int id;//用户id private String name;//用户昵称 private String password;//用户密码 priv…
(一)发展历史 在Struts框架中使用jdbc连接来读写数据库,我们最常见的就是打开数据库连接.使用复杂的sql语句进行读写.关闭连接,获得的数据又需要转换或封装后往外传,这是一个非常繁琐的过程. 这时出现了Hibernate框架,它需要你创建一系列的持久化类,每个类的属性都可以简单的看做和一张数据库表的属性一一对应,当然也可以实现关系数据库的各种表件关联的对应.当我们需要相关操作时,不再关注数据库表.我们不用再去一行行的查询数据库,只需要持久化类就可以完成增删改查的功能.使我们的软件开发真正…
Strtu2框架 1.控制器:ActionServlet充当控制层 2.模型层:由ActionForm及业务JavaBean实现 3.视图:用户的看到并与之交互的界面   由struts标签库和jsp页面实现的视图层 第一个简单的Struts2的程序 (1)创建工程,将Struts2的支持类库的web_inf目录下的lib文件拷贝到工程下的lib目录下,并添加到工程中 (2)在web.xml中生命Struts2提供的过滤器  <?xml version="1.0" encodin…
在DB Browser视图里新建一个数据库连接 Connection URL可填  jdbc:oracle:thin:@localhost:1521:orcl 或  jdbc:oracle:thin:@127.0.0.1:1521:orcl 测试是否连接成功 Finish 新建一个Java项目或者是Java web项目,为其添加hibernate支持 Finish…
概述 基本流有字节输入输出流(InputStream,OutputStream),和字符输入输出流(Reader,Writer),它们都是抽象类,作为Java IO API中其他所有流的父类存在. 我们知道数据存储在介质中时是以二进制的形式存在,用字节(byte)形式就可以实现读写,在jdk1.0版本中也只有字节输入输出流(InpuStream,OutputStream),在之后的1.1版本才加入了字符输入输出流(Reader,Writer),这是为了满足一些文本读写方便,比如中文字符可能占有两…