SSH
文章平均质量分 78
SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
_Cassie
这个作者很懒,什么都没留下…
展开
-
Hibernate的缓存策略 二
继上篇博客中hibernate缓存,我们继续说 查询缓存。三、查询缓存查询缓存,顾明思议它是查询的时候产生的缓冲,那么就要问了,刚刚在一级缓存,二级缓存中的load,get不一样是查询吗?那是什么样的查询呢?查询缓存是针对普通属性结果集的缓存,对实体对象的结果集只缓存id,这里的ID不是对象的真正ID,它与查询的条件 相关,即where后的条件相关,不同的查询条件,其缓存的id也不一样 。如wher原创 2015-08-31 23:26:46 · 965 阅读 · 2 评论 -
Hibernate缓冲策略 一
一、hibernate为什么提供缓存?什么是缓存? 在内存里开辟一块空间把本来应该存在硬盘里面的数据,存在这个空间里面,将来,需要这块数据的时候直接在内存中获取。这个就可以简单理解为缓存。 Hibernate 是一个持久层框架,经常访问物理数据库,为了减低应用程序对物理数据源的访问频次,从而提高应用程序的运行性能。 缓存内的数据是对物理数据源中的数据的复制,应用程序在运行原创 2015-08-31 22:34:59 · 844 阅读 · 1 评论 -
Hibernate的查询方式知多少 二
继上篇博客,我们继续说Hibernate的后边几个查询方式。四、DetachedCriteria这种查询叫做动态分离查询。即,业务和DAO实现分离的一种方式,查询条件是需求,千变万化,但是实现很简单,绑定条件后,只要使用一个list方法就发送了请求,所以我们可以把查询条件从实现的代码中分离出来。业务逻辑和访问数据库的实现分离,需要的时候,再结合,体现的是松耦合的思想。 看代码示例: // 底层实原创 2015-08-30 22:12:04 · 755 阅读 · 1 评论 -
Hibernate查询方式知多少 一
Hibernate查询方式说到hibernate的查询方式,我们自然而然就想到了它——hql,hibernate query language.hql是使用hibernate框架的变成配朋友们使用最多的一种方式,它以自身的独特的优势:屏蔽数据库,书写灵活的优点,备受大家的青睐。但是Hibernate不仅给我们提供了这一种查询方式,这时候悠然要说来,是不只一种,还有sql,对,确实还有sql,但是还有原创 2015-08-30 21:13:15 · 815 阅读 · 1 评论 -
Struts2 的ModelDriven 二——ModelDrive
继上篇博客介绍了值传递的几种形式,这篇博客,来说说struts2是如何实现的? 有这么两个概念和modelDriven实现有关:ValueStack,ModelDrivenInterceptor。一、ModelDrivenInterceptor首先先介绍以下ModelDrivenInterceptor,该拦截器处于defaultStack第九的位置。ModelDrivenInterceptor拦截原创 2015-07-29 18:12:56 · 2582 阅读 · 5 评论 -
Struts2 的ModelDriven 一 —— 传值
一、传值方式——两种Struts2 和页面进行值交互的方式有两种:属性驱动,模型驱动属性驱动: 1、在action中定义很多页面需要的属性及其对应的getter,setter方法。 2、前台取值写对应的属性名称——————明显不可取,不做解释。模型驱动: 1、在action中定义实体原创 2015-07-29 18:05:46 · 2728 阅读 · 5 评论 -
Hibernate进化史-------Hibernate概述
一、Hibernate概述 什么是Hibernate呢?首先,Hibernate是数据持久层的一个轻量级框架,实现了ORMapping原理(Object Relational Mapping)。 在说hibernate之前,简单说一下什么是ORM。 ORMapping基本对应规则:(这是查到的一些资料,有些规则,还没有考究) 1:类原创 2014-10-08 22:33:59 · 3353 阅读 · 14 评论 -
Hibernate目录结构以及环境搭建
说这些目录是因为发现,刚接触hibernate,其实不仅是hibernate,我们每每接触新的东西,过程中遇到bug,就习惯性的“上网” ,搜啊,找啊的,要是没有网,就悲催了。那我们要怎么办呢?————API在手,轻松编程。大家看上边的目录,我们需要的东西基本全在里边了:除了API,还有映射文件,配置文件 的书写,都有模板供我们用,只是我们没有发现,还在网上苦寻。根据我最近开始使用API的点滴经验发现,我通过API查到的东西比网上来的印象深刻。希望对大家有帮助。原创 2014-10-13 22:20:41 · 4290 阅读 · 14 评论 -
hibernate学习从XML入手
上篇博客简单介绍了构建Hibernate环境,但是还没有开始进入持久化设计阶段。这篇博客就开始hibernate的设计工作。 看hibernate原理图如下:hibernate的设计包含三步:实体类设计,实体类映射文件编写,hibernate配置文件编写。 一、实体类设计 以前的面向过程编程,和数据库打交道,我原创 2014-10-25 23:14:21 · 1363 阅读 · 15 评论 -
Hibernate持久化生命周期——三态
通过前几篇博客的大概介绍,我们发现hibernate将业务实体持久化到数据库的工作原理的实现,是通过“映射xml”来衔接的。那么这个xml的由来是哪? 映射文件(hbm)合理的存在的前提就是“有与之对应的实体的存在”——业务实体。 今天这篇博客就来说说实体到数据库的过程,这是一个从代码到数据的持久化过程,就是hibernate实现ORM持久化的生命周期。原创 2014-10-27 14:08:08 · 2126 阅读 · 14 评论 -
hibernate关系映射 一对一
接下来的这几篇博客说的是“实体关系映射”。一、关系 & 映射 我们先将关系映射,我们拆成“关系”和“映射”两部分。 关系:不陌生,在“程序员”的概念里最基本的就是表表之间的关系,类类之间的关系,这里要说的关系就这两种。一个系统中的任何一个实体都不是独立的,这就是我们类图中各个类之间的相互引用。类图间的关系表现在数据库中,就是表之间的的外键约束。这些关原创 2014-11-03 21:16:11 · 1016 阅读 · 12 评论 -
hibernate映射关系 一对多&多对一
接着上篇博客继续今天的主题:一对多,和多对一的关系映射实现。之所以把这两个关系放在一起说,不考虑方向,一对多和多对一还有区别吗? 一对多 vs 多对一 相同点: 映射原理是一致的,都是在多的一端加入一个外键,指向一的一端 双向关联是一致的。 它们的区别在于维护的关系不同——即单向关联 多对一维护的原创 2014-11-10 22:18:15 · 1045 阅读 · 14 评论 -
Hibernate映射关系-多对多
其实多对多就是两个一对多,它的配置没什么新奇的相对于一对多。在多对多的关系设计中,一般都会使用一个中间表将他们拆分成两个一对多。<set>标签中的"table"属性就是用于指定中间表的。中间表一般包含两个表的主键值,该表用于存储两表之间的关系。由于被拆成了两个一对多,中间表是多方,它是使用外键关联的,<key>是用于指定外键的,用于从中间表取出相应的数据。中间表每一行数据只包含了两个关系表的主键,要获取与自己关联的对象集合,还需要取出由外键所获得的记录中的另一个主键值,由它到对应的表中取出数据,填充到集合中原创 2014-11-26 20:32:39 · 1386 阅读 · 11 评论 -
hibernate映射关系——继承映射
今天这篇博客,说的是hibernate的继承映射。一、以前使用过继承映射吗? 刚听到继承映射的时候,不知道是怎么一回事。视频看完,哦,原来我使用过。没有学习过ORM之类知识的孩子们,如果是第一次听说,不要担心,你们一定使用过,只是不知道它用过这样一个名称而已。看下面的表: 这样的表结构,是不是很熟悉的。这就是继承映射的一种。 特点:原创 2014-11-30 12:45:53 · 1873 阅读 · 15 评论 -
hibernate映射关系——复合主键映射
由于中间做.Net项目,所以hibernate的博客更新就短篇了,现在让我们接着上篇hibernate的博客来继续hibernate的关系映射,这篇博客介绍的是复合主键映射。 一、复合主键 简单说一下什么是复合主键:在一个表中,一个字段不能唯一标识一行数据的时候,就需要两个及更多的字段来共同确定记录的唯一。这几个字段就是复合主键。 在没有ORM的概念时,原创 2015-01-27 21:50:05 · 829 阅读 · 6 评论