- 浏览: 85327 次
- 性别:
- 来自: 广州
最新评论
-
nanjiwubing123:
头像是java之父。
AJAX中文乱码解决 -
nanjiwubing123:
不错 ,解决了问题。
AJAX中文乱码解决 -
nao000:
感谢您的帖子带给的帮助。
上传文件类型验证工具类 -
KevinGarnett:
这里为什么用\\: 而不是用\: 是因为:是非标准转义字符, ...
jQuery 特殊字符应该使用转义 -
gongmingwind:
写的非常好,多谢多谢
Struts1x项目开发中的统一异常处理
web.xml
applicationContext.xml
struts.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!--定义Spring的配置的位置,可以定义多个配置文件,可以使用通配符。 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/applicationContext*.xml</param-value> </context-param> <!--设置一起动当前的Web应用,就加载Spring,让Spring管理Bean--> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!--解决Hibernate延迟加载出现的问题,需要放到struts2过滤器之前--> <filter> <filter-name>lazyLoadingFilter</filter-name> <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> </filter> <!--Struts2的过滤器,使用Struts2,必须配置该项 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <!--解决Hibernate延迟加载出现的问题,仍需要放到struts2过滤器mapping之前--> <filter-mapping> <filter-name>lazyLoadingFilter</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping> <!--Struts2的过滤器,配套的filter-mapping --> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd" default-lazy-init="true"><!-- 延迟加载bean,加快应用服务器的启动速度 --> <!-- 定义数据源的Bean ,提供给Hibernate的sessionFactory--> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"> </property> <property name="url" value="jdbc:mysql://127.0.0.1:3306/test"> </property> <property name="username" value="root"></property> <property name="password" value="root"></property> </bean> <!-- 定义Hibernate的sessionFactory,通过该Bean,可以获得Hibernate的Session--> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.Oracle9Dialect </prop> <!--设置二级缓冲--> <prop key="hibernate.cache.provider_class"> org.hibernate.cache.EhCacheProvider </prop> <!--设置二级缓冲,打开查询缓冲--> <prop key="hibernate.cache.use_query_cache">true</prop> <!--设置显示Hibernate操作的SQL语句--> <prop key="hibernate.show_sql">true</prop> </props> </property> <property name="mappingResources"> <list> <value> cn/changtusoft/s2sh_compass/model/Product.hbm.xml </value> </list> </property> </bean> <!--======================== 事务配置 ========================--> <!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref local="sessionFactory"/> </property> </bean> <!-- 配置事务特性 ,配置add、delete和update开始的方法,事务传播特性为required--> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="insert*" propagation="REQUIRED"/> <tx:method name="delete*" propagation="REQUIRED"/> <tx:method name="update*" propagation="REQUIRED"/> <tx:method name="*" read-only="true"/> </tx:attributes> </tx:advice> <!-- 配置那些类的方法进行事务管理,当前cn.com.jobedu.oa.service包中的子包、类中所有方法需要,还需要参考tx:advice的设置 --> <aop:config> <aop:pointcut id="allManagerMethod" expression="execution (* cn.changtusoft.s2sh_compass.service.*.*(..))"/> <aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod"/> </aop:config> <!--======================== dao ========================--> <!-- 商品dao --> <bean id="productDao" class="cn.changtusoft.s2sh_compass.dao.hibernate.ProductDaoHibernate"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <!--======================== manager ========================--> <!-- 商品Manager --> <bean id="productManager" class="cn.changtusoft.s2sh_compass.service.impl.ProductManagerImpl"> <property name="productDao" ref="productDao"></property> <property name="compassTemplate" ref="compassTemplate"></property> </bean> <!--======================== action ========================--> <!-- 商品Action --> <bean id="productAction" class="cn.changtusoft.s2sh_compass.web.actions.ProductAction" scope="prototype"><!-- 多实例 --> <property name="productManager" ref="productManager"></property> </bean> </beans>
struts.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.objectFactory" value="spring" /> <include file="struts-default.xml" /> <!-- 中文乱码解决 --> <constant name="struts.i18n.encoding" value="gbk"></constant> <package name="product" extends="struts-default" namespace="/product"> <action name="insert" class="productAction" method="insert"> <result>/product/product_insert_success.jsp</result> </action> <action name="search" class="productAction" method="search"> <result>/product/product_search_result.jsp</result> </action> </package> </struts>
发表评论
-
Java Thread Tech
2015-03-16 00:11 567user thread / daemon threadja ... -
Java Thread Tech
2015-03-16 00:10 0user thread / daemon threadjava ... -
移动支付-微信支付,中国银行支付交互图
2015-03-07 11:30 730以下是自己在做移动支付服务端时,画的支付交互时序图 ... -
OSCache页面缓存应用
2010-02-22 19:29 0OSCache页面缓存应用 -
上传文件类型验证工具类
2010-02-01 16:46 24911、定义合法文件类型的配置文件 allowuploadfil ... -
Tomcat访问地址映射配置
2010-01-08 09:42 4846实现的结果如: http://localhost: ... -
Compass对搜索关键字实现高亮显示
2010-01-07 08:49 1866例如搜"广东",实现后输出结果如 ... -
OSCache 缓存框架使用,方便应用到java开发的网站中
2010-01-05 08:51 2392OSCache标记库由OpenSymphony设计,它是 ... -
assert 是什么?
2010-01-04 00:04 1557assertion(断言)在软件开发中是一种常用的 ... -
struts2+spring+hibernate+compass 实现全文检索
2009-12-31 09:12 4186Compass是一流的开放源码JAVA搜索引擎框架,对 ... -
java序列化是什么,如何实现java序列化?
2009-12-30 08:50 1269序列化就是一种用来处理对象流的机制,所谓对象流也就 ... -
J2EE中一些常用的名词
2009-12-29 08:58 885web容器:给处于其中的应用程序组件(JSP,SERVLET) ... -
数据连接池的工作机制
2009-12-28 10:01 1322J2EE服务器启动时会建立一定数量的池连接,并一直 ... -
使用jspSmartUpload轻松实现上传和下载
2009-11-05 09:06 1159jspSmartUpload是由www.jspsm ... -
Struts2与Struts1的对比(推荐)
2009-11-03 22:24 7631、Action 类: Struts1要 ... -
定好项目规范的重要性
2009-11-02 23:28 1108近几个月都在忙于一个项目,由于需求的不明确,开始做的时 ... -
优秀java开源论坛 JForum,轻松搭建自己的论坛
2009-09-30 11:49 1508JForum 是一个功能强大 ,易于管理的论坛。它的 ... -
FreeMarker中文学习笔记
2009-09-24 17:09 738FreeMarker中文学习笔记。 -
多条件搜索的抽象实现
2009-09-24 17:02 0ColumnFields ColumnField -
Hibernate OneToOne双向关联为什么没有外键的一方不能Lazy加载?
2009-08-25 21:08 1712关联关系映射通常情况是比较难配置正确的。我觉得真正要掌握 ...
相关推荐
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的整合应用极大地提升了开发效率和项目的可维护性。在本示例中,我们将探讨如何将这三个框架集成在一起,实现一个完整的MVC(模型-视图-控制器)架构。 ...
这里提供的"Struts2+Spring3+Hibernate4必备整合包"是一个集合了这三个框架所需库的压缩文件,方便开发者快速搭建项目环境。 Struts2作为表现层框架,主要负责处理HTTP请求,展示视图,以及控制应用程序的流程。它...
Struts2、Spring3和Hibernate是Java EE领域中三大核心框架,它们的整合使用能够构建出高效、可维护的企业级应用程序。在这个项目中,我们主要关注的是第7章的代码内容,这部分通常会涵盖特定的主题或者阶段,如服务...
在此项目"struts2+spring2+hibernate3+login"中,开发者可能旨在展示如何整合这三个框架来实现一个基本的登录功能。 **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的开源Web应用程序框架,它主要...
1. **配置环境**:引入相关jar包,设置struts.xml、hibernate.cfg.xml、applicationContext.xml等配置文件。 2. **整合Struts和Spring**:在struts.xml中配置Action时,指定Spring管理的bean,使Action由Spring实例...
在这个整合实例中,开发者还需要关注如何配置各个框架的XML配置文件(如Hibernate的hibernate.cfg.xml,Spring的applicationContext.xml,Struts2的struts.xml等),以确保它们能正确地相互协作。此外,错误处理、...
这个"Struts2+spring+hibernate"项目是作者为了教学目的创建的一个示例,它展示了如何将这三个框架整合在一起进行数据的增删查改操作。 首先,Struts2是一个开源的MVC框架,它负责处理用户请求并将其映射到相应的...
《网络硬盘系统:Struts 2、Hibernate与Spring的整合应用》 网络硬盘系统是一种便捷的在线存储服务,它允许用户在互联网上保存、管理和共享文件。本项目以"网络硬盘(Struts 2+Hibernate+Spring实现)"为主题,采用...
- 配置`struts-plugin.xml`,启用Spring的插件支持,并指定`contextConfigLocation`,让Struts知道在哪里查找Spring的配置文件。 5. **整合Spring2.5和Hibernate3**: - 通过Spring的SessionFactoryBean配置,...
SSH(Struts2+Spring3+Hibernate3)是一种常见的Java Web开发框架组合,它整合了MVC框架Struts2、依赖注入容器Spring以及持久层框架Hibernate。这些框架的结合为开发者提供了高效、灵活且可扩展的后端架构。在本项目...
标题提到的问题是“struts2+spring+hibernate整合中spring注入出错,页面中报空指针异常”,这通常是由于Spring的依赖注入没有正确配置导致的。 首先,让我们深入了解一下Struts2、Spring和Hibernate各自的核心概念...
Struts2、Spring2.5和Hibernate3.2是经典的Java Web开发框架组合,被称为SSH。这个整合笔记的第三部分可能涵盖了如何将这三个组件无缝集成到一个项目中的详细步骤。Struts2作为MVC框架负责控制流程,Spring2.5提供...
Struts2+Spring+Hibernate(SSH)是一个经典的Java Web开发框架组合,用于构建高效、可维护的Web应用程序。这个组合提供了模型-视图-控制器(MVC)架构,使得业务逻辑、数据访问和用户界面分离,从而提高了开发效率...
Struts2、Hibernate和Spring...综上所述,“Struts2+Hibernate+Spring整合的登录案例”是一个典型的Java Web开发实践,涵盖了前端交互、后端数据处理和框架间的协作,对于理解三大框架的使用和集成具有很高的学习价值。
Struts2、Hibernate和Spring是Java Web开发中的三大框架,它们各自负责应用程序的不同层面:Struts2处理MVC模式中的Controller部分,Hibernate负责数据持久化,而Spring则提供全面的依赖注入(DI)和面向切面编程...
为此,添加Struts2的库到项目的类路径,并创建`struts.xml`配置文件。在该文件中,定义Action类、结果和拦截器栈。为了调用EJB3服务,可以使用Struts2的`@Inject`注解或者Spring的`@Autowired`注解,将Spring管理的...
5. **配置文件**:包括Struts2的配置文件(struts.xml)、Spring的配置文件(applicationContext.xml)和Hibernate的配置文件(hibernate.cfg.xml)。 6. **JSP页面**:用于显示产品信息和提供用户交互界面。 通过...
SSH整合的关键在于配置,包括Spring的Bean配置、Hibernate的数据源和实体映射配置,以及Struts2的Action和结果配置。这些配置文件需要协同工作,确保各组件之间的通信顺畅。此外,可能还需要处理异常、事务管理等...