
SSH(Struts + hibernate + spring)
小狼_百度
百度,web系统,分布式系统,大数据,机器学习,人工智能等爱好者
展开
-
struts 使用多个资源束
你可能想要将你的应用资源分解到多个文件中,以改善应用的组织和维护性,特别是在团队开发的环境中。动作要领创建单独的属性文件并且在struts-config.xml中为每一个文件声明一个message-resources元素。message-resources parameter="com.oreilly.strutsckbk.MessageResources"/>message-r转载 2008-07-29 11:30:00 · 717 阅读 · 0 评论 -
hiberante中使用复合主键
对于新系统的设计开发而言,我们应尽量避免在库表中引入与业务逻辑相关的主键关系。将业务逻辑主键引入库表,以后业务逻辑的变化,将很可能对底层数据库结构产生连带影响。复合主键的引入,很大程度上意味着业务逻辑已经侵入到数据存储逻辑之中。因此,应尽量避免。但实际情况中,我们必须面对遗留系统的旧表开发,这时,对现有复合主键的支持就非常必要。hibernate中,通过composite-id节点对转载 2009-04-06 14:50:00 · 621 阅读 · 0 评论 -
struts2的action中获得request response session
struts2的action中获得request response session2008年06月12日 星期四 15:50在struts2中有两种方式可以得到这些对象 1、非IoC方式 要获得上述对象,关键Struts 2中com.opensymphony.xwork2.ActionContext类。我们可以通过它的静态方法getContex转载 2009-04-17 12:27:00 · 844 阅读 · 0 评论 -
实现基于Spring框架应用的权限控制系统
引言 近年来,随着Internet技术的迅猛发展,计算机网络已深入到了人们的工作、学习和日常生活中,于是,怎样构建安全的web应用也成为了当前最热门的话题。Spring是一个基于IoC(Inversion of Control)和AOP(Aspect Oriented Programming)的构架多层J2EE应用系统的框架。Spring框架正在以其优良的特性吸引了越来越多的开发人员的关注,并转载 2009-04-29 10:03:00 · 724 阅读 · 0 评论 -
hibernate分页
目的:学习使用struts+hibernate实现一个通用的分页程序。内容: 分页程序是网页设计经常需要实现的基本功能。但有的分页程序直接嵌在jsp页面上,不仅工作量较大,代码也难以重用。本次试验将使用struts+hibernate来实现通用的分页程序。不同功能的代码尽量分离,以满足通用性要求。 首先需要建立一个表,如下Product,各字段设计如下(可自由更改):转载 2009-05-04 15:41:00 · 2264 阅读 · 0 评论 -
Struts(logic:iterate标签) 迭代 Map(HashMap)集合
Struts(logic:iterate标签) 迭代 Map(HashMap)集合: (1) Map map=new map(); map.put("a",""a"); "id"name="map"> "id"property="key"/> "id"property="value"/> (2) Map map=new map(); ma转载 2009-05-12 09:59:00 · 1651 阅读 · 0 评论 -
com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Every derived table must have its own alias
在sessionFactory中配置的数据库方言引起的错误原创 2009-06-13 13:28:00 · 4070 阅读 · 0 评论 -
hibernate2 和 Hibernate3 连接池配置
Hibernate支持第三方的连接池,官方推荐的连接池是C3P0,Proxool,以及DBCP.在配置连接池时需要注意的有三点: 一、Apche的DBCP在Hibernate2中受支持,但在Hibernate3中已经不再推荐使用,官方的解释是这个连接池存在缺陷.如果你因为某种原因需要在Hibernate3中使用DBCP,建议采用JNDI方式. 二、默认情况下(即没有配置连接池的情况下),Hiber转载 2009-06-13 13:40:00 · 1022 阅读 · 0 评论 -
struts2 strus.xml中result类型及含义(转)
一个提交到服务器的处理通常可以分为两个阶段,第一个阶段查询服务器状态(查询或者更新数据库),第二个阶段选择一个合适的结果页面其返回给用户(这里要讲的Result的内容)。Struts2提供了对不同种类返回结果的支持,常见的有JSP,FreeMarker,Velocity等。Struts2支持的不同类型的返回结果为:名字说明Chain Result用来处理Action链Dispatcher转载 2010-02-28 16:06:00 · 596 阅读 · 0 评论 -
hibernate的二级缓存项目使用经验总结
一、hibernate的二级缓存 如果开启了二级缓存,hibernate在执行任何一次查询的之后,都会把得到的结果集放到缓存中,缓存结构可以看作是一个hash table,key是数据库记录的id,value是id对应的pojo对象。当用户根据id查询对象的时候(load、iterator方法),会首先在缓存中查找,如果没有找到再发起数据库查询。但是如果使用hql发起查询(find, query方转载 2010-03-08 17:42:00 · 1222 阅读 · 0 评论 -
hibernate二级缓存原理分析
多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了。 我的经验主要来自hibernate2.1版本,基本原理和3.0、3.1是一样的,请原谅我的顽固不化。 hibernate的session提供了一级缓存,每个session,对同一个id进行两次load,不会发送两条sql给数据库,但是session关闭的时候,一级缓存就失转载 2010-03-08 16:32:00 · 7017 阅读 · 0 评论 -
Hibernate查询相关知识
首先介绍get()和load()方法的区别:get()方法和load()方法的区别主要在于对二级缓存的使用上。load()方法会使用二级缓存,而get()方法在一级缓存没有找到会直接查询数据库,不会去二级缓存中查找。get():如果在数据库中没有记录会返回空,get()无论如何都会返回数据.load():如果数据库中没有记录会抛出异常,如果有数据返回的是一个代理对象。list和iterator转载 2010-03-08 17:50:00 · 567 阅读 · 0 评论 -
代理模式详解
本篇文章把代理模式和JDK实现的动态代理机制,以及AOP的实现讲解的非常透彻转载 2010-06-30 11:07:00 · 601 阅读 · 0 评论 -
Spring 框架的设计理念与设计模式分析
<br />Spring 的骨骼架构<br />Spring 总共有十几个组件,但是真正核心的组件只有几个,下面是 Spring 框架的总体架构图:<br /><br />图 1 .Spring 框架的总体架构图<br /><br />从上图中可以看出 Spring 框架中的核心组件只有三个:Core、Context 和 Beans。它们构建起了整个 Spring 的骨骼架构。没有它们就不可能有 AOP、Web 等上层的特性功能。下面也将主要从这三个组件入手分析 Spring。<br />Spring 的设转载 2010-07-02 16:26:00 · 923 阅读 · 0 评论 -
urlrewriter 和 Struts2 整合
主要是在web.xml文件中的配置,这是只看urlRewrite官方文档配置不完整的补充转载 2010-06-01 15:38:00 · 1009 阅读 · 0 评论 -
使用 Spring Security 保护 Web 应用的安全
在 Web 应用开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。如果在应用开发的后期才考虑安全的问题,就可能陷入一个两难的境地:一方面,应用存在严重的安全漏洞,无法满足用户的要求,并可能造成用户的隐私数据被攻击者窃取;另一方面,应用的基本架构已经确定,要修复安全漏洞,可能需要对系统的架构做出比较重大的调整,因而需要更多的开发时间,影响应用的转载 2012-08-15 18:04:57 · 1299 阅读 · 0 评论 -
使用 Spring 2.5 基于注解驱动的 Spring MVC
概述继 Spring 2.0 对 Spring MVC 进行重大升级后,Spring 2.5 又为 Spring MVC 引入了注解驱动功能。现在你无须让 Controller 继承任何接口,无需在 XML 配置文件中定义请求和 Controller 的映射关系,仅仅使用注解就可以让一个 POJO 具有 Controller 的绝大部分功能 —— Spring MVC 框架的易用性得到了进转载 2012-08-15 17:51:53 · 906 阅读 · 0 评论 -
【struts2系列教程之一】为Struts 2.0做好准备
Struts作为MVC 2的Web框架,自推出以来不断受到开发者的追捧,得到用广泛的应用。作为最成功的Web框架,Struts自然拥有众多的优点:MVC 2模型的使用 功能齐全的标志库(Tag Library) 开放源代码 但是,所谓“金无赤金,人无完人”,Struts自身也有不少的缺点:需要编写的代码过多,容易引起“类爆炸” 单元测试困难 这些缺转载 2009-04-13 16:43:00 · 1501 阅读 · 1 评论 -
Spring 2集成Struts 2(四)
表单页面和成功页面用于填写用户注册信息的表单页面需要使用Struts 2的标签,这样就可以和服务端的Action属性进行绑定。来看一下registerUser.jsp页面的代码:<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com转载 2009-03-02 16:08:00 · 662 阅读 · 0 评论 -
(转)Struts -- html:link 标签的使用
标签用于生成HTML 元素。 在创建超链接时,有两个优点:(1) 允许在URL 中以多种方式包含请求参数。(2) 当用户浏览器关闭Cookie 时,会自动重写URL,把SessionID 作为请求参数包含在URL 中,用于跟踪用户的Session 状态。 标签有以下重要属性:(1) forward:指定全局转发链接。(2) href:指定完整的URL 键接。(3) page:指定相对于当前转载 2008-08-05 12:33:00 · 677 阅读 · 0 评论 -
使用Spring内置拦截器为Struts的Action在每个方法调用之前打印一句话
虽然Spring提供很多内置拦截器,但是我将向您展示如何创建自己的拦截器并把它应用于一个Struts动作。为了使用拦截器,您需要做三件事:1、创建拦截器;2、注册拦截器;3、声明在何处拦截代码。这看起来非常简单的几句话却非常强大。例如,在清单7中,我为Struts动作创建了一个日志记录拦截器。这个拦截器在每个方法调用之前打印一句话:清单 7.一个简单的日志记录拦截器转载 2008-08-05 18:41:00 · 2016 阅读 · 0 评论 -
Hibernate延迟加载机制
延迟加载: 延迟加载机制是为了避免一些无谓的性能开销而提出来的,所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作。在Hibernate中提供了对实体对象的延迟加载以及对集合的延迟加载,另外在Hibernate3中还提供了对属性的延迟加载。下面我们就分别介绍这些种类的延迟加载的细节。A、实体对象的延迟加载:如果想对实体对象使用延迟加载,必须要在实体的映射配置文件中转载 2008-09-03 12:21:00 · 572 阅读 · 1 评论 -
分析Hibernate的缓存机制
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并发转载 2008-09-02 15:44:00 · 643 阅读 · 0 评论 -
Hibernate缓存管理
1. Cache简介:缓存(Cache )是计算机领域非常通用的概念。它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能。缓存中的数据是数据存储源中数据的拷贝,应用程序在运行时直接读写缓存中的数据,只在某些特定时刻按照缓存中的数据来同步更新数据存储源。缓存的物理介质通常是内存,而永久性数据存储源转载 2008-09-02 16:30:00 · 670 阅读 · 0 评论 -
如何把Hibernate2.1升级到Hibernate3.0?
1.1 Hibernate API 变化 1.1.1 包名 1.1.2 org.hibernate.classic包 1.1.3 Hibernate所依赖的第三方软件包 1.1.4 异常模型 1.1.5 Session接口 1.1.6 createSQLQuery() 1.1.7 Lifecycle 和 Validatable 接口 1.1.8 Interceptor接口 1.1.9 UserTy转载 2008-09-02 17:25:00 · 546 阅读 · 0 评论 -
Hibernate检索策略
Hibernate提供以下检索策略:==> 立即检索==> 延迟检索==> 迫切左外连接检索 总结一下优缺点和优先考虑使用的场合1、立即检索:优点:对应用程序完全透明,不管对象处于持久化状态,还是游离状态,应用程序都可以方便地从一个对象导航到与它关联的对象。缺点:[1]select语句数目多[2]可能会加载应用程序不需要访问的对象,浪费时间和内存转载 2008-09-03 15:20:00 · 536 阅读 · 0 评论 -
Hibernate3和hibernate2中检索策略的变更
在Hibernate3中:1,使用load()方法:一对一,一对多,多对一,多对多检索默认采用的都是延迟检索!2,使用get()方法:一对多,多对一,多对多检索默认采用的都是立即检索 一对一检索默认采用的都是左外连接Hibernate2中:1,类级别,使用load()方法(get()方法总是立即检索):默认立即检转载 2008-09-03 15:39:00 · 631 阅读 · 0 评论 -
项目中成功的运用proxool连接池
最近做的一个项目中运用到了连接池技术,可能我们大家比较熟悉的开源连接池有dbcp,c3p0,proxool。对这三种连接池来说,从性能和出错率来说,proxool稍微比前两种好些。今天我主要简单的讲述一下,我在项目中成功的配置和源码。 第一步:首先去http://proxool.sourceforge.net/下载一个proxool.jar文件了,我用的是proxool- 0.8转载 2008-06-24 14:58:00 · 845 阅读 · 0 评论 -
[spring]:org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode
org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are not allowed in read-only mode (FlushMode.NEVER/MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove原创 2008-11-03 14:09:00 · 3602 阅读 · 4 评论 -
Spring web应用下怎么方便的获得bean?
Spring web应用下怎么方便的获得bean? 如果我们的系统不是分布式的(在分布式里,我一般自己加载spring的配置文件),不是一般的application,通过自己加载Spring的配置文件的方式。而是一般的web应用,我们通过在web.xml里配置spring的配置文件。我们怎么方便的得到一个Bean的实例呢?当然,web应用启动后,它已经创建好一个WebApplicatio转载 2008-11-14 17:36:00 · 758 阅读 · 0 评论 -
Spring2.0 集成Struts 2(二)
集成Struts 2的步骤和Spring集成的目标是什么呢?无非是希望Struts 2的Action定义直接使用Spring IoC的功能,将业务层的Bean注入到Struts 的Action中。用户当然可以简单地在Struts中通过WebApplicationContextUtils.getWebApplicationContext(ServletContext sc)获取Spring容器的B转载 2009-03-02 16:04:00 · 711 阅读 · 0 评论 -
struts2.与spring集成
1.将struts2-spring-plugin-2.0.8.jar文件包含到我们的应用中,放到WEB-INF/lib目录下面即可。在这个插件包中有个struts-plugin.xml文件,它的内容如下: class="org.apache.struts2.spring.StrutsSpringObjectFactory" />转载 2009-03-02 13:45:00 · 736 阅读 · 0 评论 -
spring 属性文件的载入,支持正则表达式
pe1.在Spring 中可以使用以下两个类加载资源文件:org.springframework.context.support.ResourceBundleMessageSource和org.springframework.context.support.ReloadableResourceBundleMessageSource后者可以不重起服务器的情况下,读取资源文件,所以可以随时更改资源文转载 2009-03-02 14:33:00 · 1887 阅读 · 0 评论 -
Spring 2.0集成Struts 2.0(一)
引言Struts 2在经历了两年漫长的开发后,终于在2007年2月底正式发布,Struts 1.3.8是Struts 1的最终版本,Struts 1从此不再升级。Struts 2和Struts 1差别非常大,几乎是两个完全不同的东西,所以不要指望Struts 1在不经过修改的情况下就可以跑在Struts 2环境下。Struts 2与其说是Struts的升级版本,莫如说是WebWork的升级版本—转载 2009-03-02 16:01:00 · 621 阅读 · 0 评论 -
eclipse使用svn插件版本号不能显示的解决
eclipse 中使用 svn 插件,原本正常,未作任何更改,突然有一天, eclipse 中查看文件时,文件后面的 版本号 、 文件的状态图标 等等都不见了。 检查插件都在,更新,提交等操作都能正常使用,唯独看不到状态了。 经过一番查找,找到问题解决办法。 打开 : windows ->preferences->General->Appeara转载 2012-10-25 16:15:00 · 2152 阅读 · 0 评论