最近由于项目需要,对strusts2做了一些学习。和大家分享下学习的心得。
发现struts2和webwork有着惊人的相似。struts2其实用的还是webwork包里的拦截器。原理上来说struts2是对http请求在容器的filter层做了拦截。并且对servlet层做了包装。我们可以不需要提供serlet了,而是只要提供一个方法就可以了。只要方法符合它的要求就可以了。其实要求也比较宽泛,只要方法返回一个字符串,如果需要传递数据,则提供一个数据容器bean及bean的属性代理方法。这样子就可以和页面传递数据了。 还有一个需要注意的是,struts2现在的页面数据是在页面上通过tag 来 pull出来的。对 EL没有支持。即原来struts1里面 我们去数据可以
${<the var in the request>}
,通过tag,但是原理上差别不大。觉得这样子可以比较专注于业务逻辑处理。
还是来段代码把,嘴上说的太虚,还是真刀真枪的干才是真理啊。
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.yqg;
/**
*
* @author jonson_yu
*/
public class HelloWorld {
private String name;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public String doWork(){
//TODO do you own work
//传递name数据到页面上。当然这个string类型的bean可以是任意的你自定义的bean。
setName("your name!");
//返回的字符串要符合默认规则。success会默认的找到配置文件里的第一配置的跳转页面
//作为跳转页。 也可以自己定义跳转名字,要在配置文件里配置。
if(false){
return "goOtherPage";
}
return "success";
}
}
<actions package=""...>
<action name="dowork" class="com.yqg.HelloWorld" method="doWork">
<result name="goOtherPage">/otherPage.jsp</result>
</action>
</actions>
关于具体配置的网上文章比较多,可以看
http://xuliangyong.iteye.com/blog/72862 这里。整个用下来感觉struts2还是非常不错的一个框架。让我们更专注于业务逻辑。但是在开发过程中发现,大量的发射调用,在性能上有所下降。没有做具体的测试,不知有没有哪位有比较深入的研究性能的。
分享到:
- 2008-09-05 23:18
- 浏览 858
- 评论(0)
- 论坛回复 / 浏览 (0 / 1501)
- 查看更多
相关推荐
Struts2是一款非常流行的Java Web框架,用于构建企业级应用。然而,随着时间的推移,Struts2在安全方面暴露出了一些重要的漏洞,这给使用该框架的系统带来了潜在的安全风险。"Struts2漏洞检查工具Struts2.2019.V2.3...
该工具的打开路径为:\Struts2VulsTools-2.3.20190927\Test\bin\Release\Text.exe 2019-09-25: 优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建...
Struts 2是一款基于Java的开源MVC框架,它在Web应用开发中广泛使用,但同时也因其复杂的架构和历史遗留问题,成为了网络安全的焦点。这个标题提到的是一个全面的Struts 2漏洞检测工具,旨在帮助开发者和安全专家识别...
Struts2漏洞检查工具2019版 警告: 本工具为漏洞自查工具,请勿非法攻击他人网站! ==漏洞编号==============影响版本=========================官方公告==========================================影响范围====...
Struts2是一款流行的Java Web框架,它为开发者提供了一种构建MVC(Model-View-Controller)架构的应用程序的方式。然而,Struts2在过去的几年里遭遇了一系列的安全漏洞,这些漏洞可能使攻击者能够远程执行代码,从而...
Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理...
struts2 漏洞检测工具 ,快速检测struts命令执行漏洞,可批量。运行环境要求:MAC/Linux下的Python2、Python3 。支持ST2-005,ST2-008,ST2-009,ST2-013,ST2-016,ST2-019,ST2-020,ST2-devmode,ST2-032,ST2-033,ST2-037...
### Struts2基本运行环境配置方法 #### 一、引言 在Java Web开发领域,Struts2框架因其简洁的设计模式、丰富的插件支持以及高度的可扩展性而备受开发者青睐。本文将详细介绍如何在MyEclipse环境中配置Struts2的基本...
5、作者对不同的struts2漏洞测试语句做了大量修改,执行命令、上传功能已经能通用。 6、支持HTTPS。 7、支持GET、POST、UPLOAD三种请求方法,您可以自由选择。(UPLOAD为Multi-Part方式提交) 8、部分漏洞测试支持...
### Struts2框架基础知识 #### 一、Struts2框架简介 Struts2是一个基于Java的开源Web应用程序框架,属于MVC(Model-View-Controller)模式的一种实现。它简化了Web应用的开发过程,使得开发者可以更加专注于业务...
struts2全版本检测,利用工具
Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、结构清晰的MVC(Model-View-Controller)架构的Web应用。它基于Apache软件基金会的Jakarta Struts项目,旨在提供比其前身Struts1更为灵活和强大的...
Struts2作为一款流行的Java Web框架,极大地简化了MVC(模型-视图-控制器)应用的开发。自定义标签是Struts2框架中的一个重要特性,它允许开发者创建自己的标签库,以更直观、易读的方式在JSP页面中处理业务逻辑。...
在Web开发中,jQuery、Struts2、Ajax和JSON是常见的技术组合,它们协同工作以实现动态、异步的数据交互。本示例将探讨如何利用jQuery的Ajax功能向Struts2框架发送请求,并以JSON格式接收响应数据。下面我们将详细...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展且易于管理的企业级应用程序。在Struts2中,通配符配置是一项强大的功能,它允许开发者以更灵活的方式定义Action映射,从而提高代码的复用性和配置的简洁...
### Struts2 接受参数的几种方式 #### 第一种方式:直接在 Action 中设置变量 这种方式是最直接的参数接收方式。当从前端传递参数到后端时,我们需要确保 Action 类中有与这些参数名称相匹配的变量。例如,如果...
Struts2是一个用于开发Java EE网络应用程序的开源框架,它基于MVC(模型-视图-控制器)设计模式。Struts2 Action是该框架中的核心组件,用于处理用户请求并返回相应的响应。 首先,要了解Struts2 Action的开发,...
### Struts2常用标签及其应用详解 #### 一、引言 Struts2是一个基于MVC模式的开源Java Web框架,它提供了丰富的标签库来帮助开发者更高效地进行Web应用程序的开发。这些标签不仅简化了页面逻辑的编写,还提高了代码...
3. **S2-045(CVE-2017-5637)**,与S2-048类似,是一个远程代码执行漏洞,主要影响Struts2的Struts2 Dojo展示模块。攻击者可以通过精心设计的请求触发漏洞,执行服务器端的任意命令。 4. **S2-016(CVE-2013-2261...