`
liuhun3083053
  • 浏览: 17054 次
社区版块
存档分类
最新评论

struts2

阅读更多

 

                                                                                                                                                      
  Struts2浅谈

Struts2基于struts WebWork的技术基础上的服务于Web的一种MVC框架 Struts 2WebWork为核心 采用拦截器的机制来处理用户的请求 业务逻辑控制器能够与Servlet API完全脱离开 

 

 

Struts2框架的大概处理流程如下: 

 

 1、加载类(FilterDispatcher) 

 2、读取配置(struts配置文件中的Action

 3、派发请求(客户端发送请求)  

   4、调用ActionFilterDispatcherstruts配置文件中读取与之相对应的Action )  

   5、启用拦截器(WebWork拦截器链自动对请求应用通用功能,如验证)  

   6、处理业务(回调Actionexecute()方法) 

   7、返回响应(通过execute方法将信息返回到FilterDispatcher) 

   8、查找响应(FilterDispatcher根据配置查找响应的是什么信息如:SUCCESSERROR,将跳转到哪个jsp页面) 

   9、响应用户(jsp--->客户浏览器端显示) 

 

Struts2优点:

     相比struts1的标签库,struts2是大大加强了,对数据的操作功能很强大
    Struts1要求必须统一扩展自Action类,而Struts2中可以是一个普通的pojo 

       Struts1Action依赖于Servlet API,比如Actionexecute方法的参数就包括requestresponse对象。Struts2中的Action不再依赖于Servlet API

ActionSupport基类

ActionSupport基类实现了Action等其它一些接口。其中定义了五个标准的返回值 ,当然我们可以自己随意定义返回的名字  

String SUCCESS = "success"; //默认是 SUCCESS 类型  

String NONE = "none";  

String ERROR = "error";  

String INPUT = "input";  

String LOGIN = "login"; 

 

Mvc模型:

 

 Struts2是基于mvc开发模式的,那什么是mvc模式:

 模型(M): Model层实现系统中的业务逻辑,通常可以用JavaBean来实现 

 视图(V):View层用于与用户的交互,通常用JSP来实现 

 控制器(C):Controller层是ModelView之间沟通的桥梁,它分派用户的请求并选择恰当的视图以用于显示 

 

Struts配置:

 

 

1.新建web工程

2.下载struts-2.3.3-all.zip,解压,将里面的相关包copyWEB-INFlib目录下

3.src目录下新建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/dtd/struts-2.0.dtd">

<struts>

</struts>

4.web.xml文件中添加如下代码:

<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>

 

5.运行项目。如若不报错这配置成功可以开始做项目。

 

 

注意:

 

1.刚开始测试时会出现很多问题 那是因为该导入的包没有导入 

commons-fileupload-1.2.2.jar

commons-io-2.0.1.jar

commons-lang3-3.1.jar

commons-logging-1.1.1.jar

freemarker-2.3.19.jar

javassist-3.11.0.GA.jar

ognl-3.0.5.jar

struts2-core-2.3.3.jar

xwork-core-2.3.3.jar

试着将这些包都导入 如果还不行再导入其他包

 

2.报错:The markup in the document following the root element must be well-formed.

 

检查一下web.xml文件中所有的标签是否都放到<web-app></web-app>里面

 

 

3.struts.xml要求必须在WebRootWEB-INFclasses目录下。我们可以在src下建立   struts.xml文件,在src根目录下建立的文件eclipse都会自动编译到classes目录下,  

      系统运行时解析的是classes目录下的文件而不是src下的文件

 

 

 

4.报错   Could not find action or result

There is no Action mapped for namespace [/] and action name [login] associated  with context path [/Struts2]. - [unknown location]

 

如果struts.xml文件位置没错的话 那就是因为文件的内容有误 仔细检查每个单词 每个字母 肯定能找出错误

 

分享到:
| iis
评论

相关推荐

    Struts2漏洞检查工具Struts2.2019.V2.3

    Struts2是一款非常流行的Java Web框架,用于构建企业级应用。然而,随着时间的推移,Struts2在安全方面暴露出了一些重要的漏洞,这给使用该框架的系统带来了潜在的安全风险。"Struts2漏洞检查工具Struts2.2019.V2.3...

    struts2jar包

    Struts2是一个强大的Java EE应用程序框架,主要用于构建企业级的Web应用。它的核心是MVC(Model-View-Controller)设计模式,可以帮助开发者组织代码,提高开发效率,并且提供了丰富的特性来支持表单验证、国际化、...

    struts2项目开发

    Struts2 项目开发 Struts2 是一个基于 Java Web 的框架,广泛应用于 Web 应用程序的开发。下面将从 Struts2 项目开发的角度,详细介绍 Struts2 框架的应用、开发流程、技术架构、实践经验等方面的知识点。 项目...

    Struts2视频教程

    ### Struts2核心知识点解析 #### 一、Struts2框架概述 - **定义与特点**:Struts2是一款基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它继承了Struts1的优点,同时在设计上更加灵活、易用,...

    struts2-core.jar

    struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...

    Struts2VulsTools-Struts2系列漏洞检查工具

    该工具的打开路径为:\Struts2VulsTools-2.3.20190927\Test\bin\Release\Text.exe 2019-09-25: 优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建...

    Struts2接口文档

    Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化创建用户交互式、数据驱动的web应用的过程。这个“Struts2接口文档”是开发者的重要参考资料,提供了关于...

    struts2-showcase.rar

    Struts2-showcase是一个用于演示和学习Apache Struts2框架功能的开源项目。这个压缩包“struts2-showcase.rar”包含了完整的源代码,旨在帮助开发者深入理解Struts2框架的工作原理及其各种特性。以下是对Struts2和...

    struts2中文学习文档

    从给定的文件信息来看,标题“struts2中文学习文档”和描述“struts2的根本webwork2”表明这是一份关于Struts2框架的学习资料,特别强调了Struts2与WebWork2的关系。Struts2是Apache Struts的一个版本,它是一个用于...

    Struts2+Jquery+Ajax

    "struts2 jar"文件包含了Struts2框架的核心库,可能包括struts2-core、struts2-convention、struts2-json-plugin等依赖,这些是开发Struts2应用必不可少的组件。 "Struts2"可能是项目实例代码,包括Action类、视图...

    struts2所有jar包程序文件

    Struts2是一个非常著名的Java Web开发框架,由Apache软件基金会维护。它基于MVC(Model-View-Controller)设计模式,极大地简化了构建基于Java EE的Web应用程序的过程。本资源包含"struts2所有jar包程序文件",是...

    Struts2_s2-016&017&ognl2.6.11_patch漏洞补丁

    -- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper --&gt; &lt;bean type="org.apache.struts2.dispatcher.mapper.ActionMapper" name="myDefaultActionMapper" class=...

    Struts2教学视频

    Struts2是一个强大的Java web开发框架,用于构建可维护、可扩展且结构良好的应用程序。它在MVC(Model-View-Controller)设计模式的基础上提供了一种实现方式,使得开发者能够更方便地处理用户请求,控制业务逻辑,...

    张龙圣思园struts2学习笔记word

    Struts2是Apache软件基金会下的一个开源框架,主要用于构建企业级的Java web应用程序。张龙圣思园的Struts2学习笔记,无疑为Java开发者提供了一份宝贵的参考资料,它可能涵盖了Struts2的基础概念、核心组件、配置...

    struts2 chm 帮助文档

    struts2 chm 程序包 org.apache.struts2 接口概要 接口 说明 StrutsStatics Constants used by Struts. 类概要 类 说明 RequestUtils Request handling utility class. ServletActionContext Web-specific ...

    Struts2开发常用jar包

    包含struts2-core-2.5.10.1.jar,struts2-jfreechart-plugin-2.5.10.1.jar,struts2-json-plugin-2.5.10.1.jar,struts2-junit-plugin-2.5.10.1.jar,struts2-bean-validation-plugin-2.5.10.1.jar,struts2-cdi-...

    最新版本的Struts2+Spring4+Hibernate4框架整合

    整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...

    全网最全Struts 2 全版本漏洞检测工具,最新struts漏洞更新

    Struts 2是一款基于Java的开源MVC框架,它在Web应用开发中广泛使用,但同时也因其复杂的架构和历史遗留问题,成为了网络安全的焦点。这个标题提到的是一个全面的Struts 2漏洞检测工具,旨在帮助开发者和安全专家识别...

    struts2 总结工程大全

    struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全struts2 总结工程大全...

    Struts2漏洞测试

    Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试Struts2漏洞测试...

Global site tag (gtag.js) - Google Analytics