`

Struts2(2):Struts2的输入检验

阅读更多

1:新建一个login2.jsp,使用Struts2的标签编写JSP文件

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix ="s" uri="/struts-tags"%>
<html>
  <body>
    <s:form action="login">
    	<s:textfield name="username" label="username"></s:textfield>
    	<s:password name="password" label="password"></s:password>
    	<s:submit></s:submit>
    </s:form>
  </body>
</html>

2:修改了原来的execute,validate方法,

    在execute方法中加入逻辑校验,即进行密码的判断,如果用户名是hello,密码是wordl,则正确,跳转到success,否则错误,提示username or password error。

    在validate方法中加入判空校验,fieldError中如果有值,则自动跳转到struts.xml配置文件中 action中result为input对应的页面。

public String execute() throws Exception {
		if("hello".equals(this.getUsername().trim()) && "world".equals(this.getPassword().trim())){
			return SUCCESS;
		}else{
			this.addFieldError("username", "username or password error");
			return "failer";
		}
	}
	
	public void validate() {
		if (null == this.getUsername() || "".equals(this.getUsername().trim())) {
			//只有jsp页面使用STRUTS标签,FieldError里的值才能显示在页面上。
			this.addFieldError("username", "username required");
		}
		if (null == this.getPassword() || "".equals(this.getPassword().trim())) {
			this.addFieldError("password", "password required");
		}
	}

 3,struts.xml文件如下:

<package name="struts2demo" extends="struts-default">
		<action name="login" class="com.test.action.LoginAction">
			<!--input标签表示,如果action中validate方法的FieldError中有值,就会跳转到input标签指定的JSP页面-->
			<result name="input">/login2.jsp</result> 
			<result name="success">/result.jsp</result>
			<result name="failer">/login2.jsp</result>
		</action>
	</package>

 

分享到:
评论

相关推荐

    Struts2输入校验总结

    ### Struts2输入校验深度解析 #### 一、手动输入完成校验 在Struts2框架中,输入校验是确保数据完整性和安全性的重要环节。对于手动输入完成校验,Struts2提供了灵活的机制。 1. **普通处理方式**:在Action类中...

    struts2-scan_struts2-scan_struts2scan_scan_struts2漏洞_

    这个标题和描述提到的"struts2-scan"是一种工具,专门用来检测Struts2框架中的安全漏洞。 Struts2漏洞通常涉及到框架的核心组件,例如OGNL(Object-Graph Navigation Language)表达式,这是一种强大的语言,允许在...

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

    "Struts2漏洞检查工具Struts2.2019.V2.3"是一个专门针对这些漏洞进行检测的工具,旨在帮助开发者和网络安全专业人员识别并修复Struts2框架中的安全问题。 Struts2的安全漏洞主要包括以下几类: 1. OGNL(Object-...

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

    1. **OGNL漏洞扫描**:检测Struts 2应用中是否存在可被恶意利用的OGNL表达式,如未过滤的用户输入或不安全的配置。 2. **插件漏洞扫描**:Struts 2有众多插件,这些插件可能存在单独的安全问题,工具会检查已安装...

    K8 Struts2 Exp 20160516(Struts2综合漏洞利用工具)

    这个工具主要是针对上述漏洞进行利用的,通过自动化的方式帮助安全研究人员或者攻击者快速检测并利用Struts2框架中的漏洞。其主要功能可能包括: 1. **漏洞探测**:扫描目标服务器,识别是否存在Struts2的特定版本...

    struts2漏洞检测工具

    - **OWASP Struts2 Plugin**:这是一个由Open Web Application Security Project(OWASP)维护的插件,它可以集成到SonarQube或ZAP等静态和动态分析工具中,检测Struts2应用的潜在安全问题。 - **Nessus**:...

    Struts2漏洞利用工具-可用于检测

    标题提及的“Struts2漏洞利用工具”是一种用于检测Struts2框架是否存在已知安全漏洞的工具。这种工具通常由安全研究人员或白帽黑客开发,旨在帮助管理员识别并修复潜在的安全问题,防止恶意攻击者利用这些漏洞。 ...

    Struts2漏洞检测(带自己编写使用说明一看就上手)

    本资源提供的“Struts2漏洞检测(带自己编写使用说明一看就上手)”正是针对这些问题,帮助用户快速检测和修复Struts2框架的安全隐患。 首先,让我们理解Struts2漏洞的常见类型: 1. **S2-045**(CVE-2017-9805)...

    struts2漏洞利用工具

    这个"Struts终极漏洞利用工具"显然旨在帮助安全研究人员和管理员检测和测试Struts2应用是否存在这些已知漏洞。 首先,我们要理解Struts2漏洞的核心在于其ActionServlet组件处理用户输入的方式。例如,一个著名的...

    Struts2远程命令执行验证工具

    Struts2远程命令执行漏洞,通常被称为S2-045或CVE-2017-5638,是由于Struts2框架在处理特定的HTTP头信息时存在缺陷,导致攻击者可以构造恶意输入,使得服务器在解析时执行任意系统命令。这种漏洞的危险性极高,因为...

    struts2安全漏洞修复

    1. 使用静态代码分析工具:例如SonarQube、FindBugs等,它们可以检测出代码中的潜在安全问题,包括Struts2漏洞。 2. 安全扫描工具:如OWASP ZAP、Nessus等可以帮助识别应用中的安全漏洞,并提供修复建议。 3. 自动...

    struts2反序列化漏洞,存在s2-005、s2-016、s2-016_3、s2-017

    这些漏洞允许攻击者通过精心构造的输入,利用Struts2的内置机制执行任意代码,从而对系统造成严重危害。 首先,s2-005漏洞(CVE-2012-0881)是2012年发现的一个严重问题,它涉及到Struts2的OGNL(Object-Graph ...

    struts2 漏洞利用工具

    1. **Ognl(Object-Graph Navigation Language)表达式注入**:这是Struts2中最常见的一类漏洞,源于其使用OGNL语言解析用户输入来执行服务器端操作。攻击者可以通过构造恶意的OGNL表达式,从而执行任意服务器端代码...

    struts2 入门书籍

    - **Struts2框架实现数据校验**:利用框架提供的校验工具,如`FieldValidator`和`ActionValidator`,可以自动检测表单字段的合法性。 - **国际化实现**:Struts2支持多语言的应用,通过配置资源文件,可以轻松实现...

    struts2 漏洞利用工具.rar

    "struts2 漏洞利用工具.rar"这个压缩包很可能包含了一系列用于检测和利用Struts2框架漏洞的工具。 1. **Struts2漏洞概述**: Struts2的安全问题主要集中在其ActionMessage、ActionError和ActionSupport类的使用上...

    Struts2漏洞检查工具

    2. **安全实践**:除了依赖工具,还应遵循最佳安全实践,如定期更新Struts2到最新安全版本,配置好过滤器以限制恶意输入,以及采用严格的输入验证。 3. **应急响应**:发现漏洞后,应迅速制定并执行修复计划,包括...

    struts 2登录系统及其jar包

    Struts 2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用程序框架,它简化了构建可维护和可扩展的Web应用的过程。...实践是检验理论的最好方式,动手尝试这个示例,你将对Struts 2有更直观的理解。

    Struts2漏洞检查工具.rar

    1. **批量导入网站**:用户可以输入多个网址,工具会逐一扫描这些网站,检查它们是否使用了Struts2框架,并且存在已知的安全风险。 2. **自动检测**:工具自动执行一系列的测试,以确定网站是否存在特定的Struts2...

Global site tag (gtag.js) - Google Analytics