用struts2+Spring3+hibernate3开发,struts.xml文件的配置
第一步:导包。导入struts的各种jar包
这里需要说的是用的是eclipse开发,除了导入struts的核心包之外,因为要与spring整合,需要struts2-spring-plugin-2.2.1.1.jar
需要在action中使用servlet,需要导入 servlet-api.jar包
需要在jsp中使用EL的C标签,导入jstl.jar
需要json,导入json_simple1.1.jar gson-1.7.1.jar
需要连接mysql,导入mysql-connector-java-5.1.12-bin.jar(这是突然想到了,就写上了)
第二步,写web.xml文件
下面的配置是spring管理hibernate,支持懒加载,这个必须放在struts配置的上面,否则懒加载失败
<!-- OpenSessionInview 支持hibernate的懒加载-->
<filter>
<filter-name>openSessionInView</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>openSessionInView</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
然后是,struts配置,在spring的配置文件之后(不知道有没有顺序,老师是这么写的)
<!-- struts2 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
第三步,写struts.xml文件
可以有多个<package>,继承自strut-default,命名空间可写可不写。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<struts>
<package name="mypackage" extends="struts-default">
<!-- struts2中,action交给Spring管理后,class属性值要改为Spring中配置的id -->
<!-- 登录 -->
<action name="login" class="loginAction" method="login">
<result type="redirectAction" name="success">
<param name="actionName">manageList</param>
<param name="input">login.jsp</param>
</result>
<result type="redirect" name="input">login.jsp?err=001</result>
</action>
</package>
<!-- struts2对json的支持继承自json-default
<package name="json" extends="json-default">
<action name="findSecon" class="blogAction" method="findSeconBlog">
<result type="json"></result>
</action>
</package>
-->
</struts>
第四,写action类
public class BlogAction extends ActionSupport
implements sessionAware,ServletRequestAware,ServletResponseAware{
继承自ActionSupport类,如果需要session、request、response的话,可以实现sessionAware、ServletRequestAware、ServletResponseAware三个接口。
当然还有applicationAware(private Map<String,Object> application)这个貌似也是假的application。
注意:有没有Servlet。
其中,private Map<String, Object> session; 可以实现session的效果而不用与httpSession耦合。如果真要用HttpSession可以这样取得HttpSession对象:
HttpSession session = ServletActionContext. getRequest().getSession();
Http的request、response对象可以这样取得:
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
HttpServletResponse response = (HttpServletResponse) ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE);
差点忘了,第五步:配置struts.properties文件
这里可以修改Action的后缀,配置上传文件的临时文件夹、等
### Parser to handle HTTP POST requests, encoded using the MIME-type multipart/form-data
# struts.multipart.parser=cos
# struts.multipart.parser=pell
struts.multipart.parser=jakarta
# uses javax.servlet.context.tempdir by default
struts.multipart.saveDir=c:\\temp
# -1 nolimit
#struts.multipart.maxSize=-1
struts.action.extension=jspx,action
分享到:
相关推荐
在实际开发中,一个SSH项目会包含各种配置文件(如struts-config.xml、hibernate.cfg.xml)、Java源代码(Action类、DAO类、Service类等)、JSP页面以及数据库脚本等。开发者通常会利用IDE(如Eclipse或IntelliJ ...
在Struts2中,实现文件上传功能是非常常见的需求,而带进度条的文件上传则可以提供更好的用户体验,让用户了解文件上传的进度,减少用户的等待焦虑感。 Struts2的文件上传主要依赖于Apache的Commons FileUpload库。...
在SSH项目中,使用Hibernate注解可以减少XML配置文件的数量,提升开发效率。Hibernate注解如`@Entity`(定义实体类)、`@Table`(指定数据库表名)、`@Id`(主键)、`@GeneratedValue`(自动生成策略)等,使得...
在SSH框架整合中,每个框架都有其特定的配置文件,而Struts2作为控制层的核心,其配置文件`struts.xml`尤其关键。 `struts.xml`是Struts2框架的核心配置文件,它定义了应用程序的行为,包括Action的映射、结果的...
- **拦截器配置**:SSH框架中的拦截器是控制流程的关键组件,需要根据项目需求合理配置,例如Struts2的拦截器链、Spring的切面(AOP)拦截器等,确保业务逻辑正确执行。 #### 四、注意事项 - **版本一致性**:在...
在这个项目中,所有配置都采用XML文件,虽然这种方式相对直观,但随着项目的扩大,XML配置文件可能会变得庞大且难以维护。现代开发中,更倾向于使用注解配置或者Spring Boot的自动配置来简化配置过程。 总结来说,...
在Struts2的配置文件(struts.xml)中,我们需要为文件上传的动作添加特定的配置,比如设置`allowedTypes`来限制上传文件的类型,以及`maximumSize`来限制文件大小。 进度条功能通常通过JavaScript库如jQuery UI或...
在Struts2中,Action是处理用户请求的核心,它是业务逻辑的载体。每个Action对应一个特定的用户操作,处理完业务逻辑后,会返回一个Result,Result决定了后续视图的展示方式。Action与Result之间的跳转可以通过配置...
Struts2配置文件通常为`struts.xml`,在这里定义Action、结果类型、拦截器等,是整个框架的配置中心。 **Spring** 是一个全面的Java企业级应用开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)功能,用于...
配置SSH框架时关于Struts2的配置文件
2. 集成Spring:在web.xml中配置Spring的DispatcherServlet,创建ApplicationContext配置文件,定义Bean。 3. 整合Hibernate:配置hibernate.cfg.xml文件,定义实体类和映射文件,加载SessionFactory。 4. 将Spring...
在商品管理中,Struts2可以创建Action类来处理不同的业务逻辑,如添加商品、删除商品等,并定义对应的Action配置在struts.xml文件中,以决定请求的路由。 其次,Spring框架作为依赖注入(DI)和面向切面编程(AOP)...
下面将分别介绍这三个框架及其在项目中的作用。 1. Struts2:Struts2是一个基于MVC(Model-View-Controller)设计模式的开源Web应用框架,它主要负责处理用户请求,进行视图展示以及业务逻辑控制。Struts2提供了...
配置 ssh2连接的详细解说,struts2+hibernate+spring整合的框架步骤及简单的知识,具体实现可以联系我
在SSH整合项目中,通常会有一个总的配置文件,例如 applicationContext.xml,用于配置Spring的bean,包括Struts2的Action、Service、DAO等。同时,Struts2的配置文件会引用Spring的bean,使得Action可以直接注入...
以下是关于SSH配置文件的详细解释: 1. **Spring框架**: - **spring-config.xml**:这是Spring的核心配置文件,用于定义Bean的实例化、依赖注入以及AOP(面向切面编程)等相关配置。例如,你可以在这里声明数据库...
描述中提到的"与Struts2的SSH整合工程配合使用"意味着这个压缩包是为了一个已经或者即将进行SSH整合的项目准备的。在实际开发中,开发者需要将这些库文件导入到他们的项目中,以便于框架间的协同工作。整合过程通常...
在现代Web应用开发中,SSH(Struts2、Spring、Hibernate)框架因其各自独特的功能和优势,常被组合使用以构建高效、稳定且易于维护的系统。以下是针对SSH框架整合的具体实施步骤和思路。 #### 二、整合步骤详解 ##...
- 此步骤会自动添加Struts2的相关库,并在`src`目录下生成`struts.xml`配置文件,同时在`web.xml`中配置Struts2的过滤器。 3. **配置Struts2** - 在Struts2的配置界面,可以选择Struts2的版本和所需的Jar包。 - ...
在SSH项目中,Struts2承担的角色包括: 1. **请求分发**:根据用户请求,Struts2会找到相应的Action并执行。 2. **动作配置**:通过配置文件或注解定义Action及其结果,连接业务逻辑和视图。 3. **拦截器**:使用...