繁体   English   中英

Struts 2请求映射

Struts 2 request mapping

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我是struts的新手并且学习它。 我的问题是struts如何使用动作实例变量映射请求参数。 例如,我有一个使用用户名和密码的登录表单。 现在它向LoginAction发送请求。 此操作类将如何在用户名实例中获取用户名实例,并在密码变量中获取密码。 在servlet中,我们使用request.getParameter()方法并将值赋给特定变量。

3 个回复

在struts2中我们使用Interceptor ,在这种情况下struts2将使用param拦截器为你设置params,你只需要配置你的拦截器堆栈(或者你只需​​要使用default-stack)。 这里是Interceptor的链接,如果你在struts2中非常新鲜,只需使用默认配置并感受一下。

例:

<s:form action="my-action">
  <s:textfield name="myField"/>
  <s:submit/>
</s:form>

动作类:

public class MyActionClass extends ActionSupport{
  private String myField; // getter and setter
  public String execute() throws Exception{
    return "success";
  }
}

组态:

<package name="default" extends="struts-default">
  <action name="my-action" class="MyActionClass">
    <result>success.jsp</result>
  </action>
</package>

在这种情况下, myField将由拦截器自动设置。

Struts为您映射参数。 这就是为什么使用框架可以节省您的时间和精力,因为您不必手动从request提取参数。

Struts通过调用setUsername自动将请求参数username映射到操作类的username成员。

另请参阅struts教程

Struts2使用了一组拦截器来完成繁重的工作,这意味着在Action的方法执行时,您将获得所有需要的数据。

用于将数据从JSP传输到操作类Struts2使用拦截器名称参数拦截器 ,您需要在操作类中使用与JSP字段名称相同的名称来创建属性,S2将转换数据并填充字段您。

所以如果JSP有两个名称为userNamepassword字段,你需要在你的动作类中用getter和setter来定义

public class MyAction extends ActionSupport{
  private String userName;
  private String password
  //getter ans setter

 public String execute() throws Exception{
  // do what yoou want
 }


}
1 Struts2不会将请求参数映射到Integer操作字段

好的,我在这里失去了理智。 这应该是微不足道的东西,但我整天都坚持这一点。 这是设置: 形成jsp: struts.xml :(使用默认的struts拦截器堆栈) UpdatePONumbersAction.java: 表单先前已填充值。 我可以从Chrome ...

2 struts2的休眠映射

我正在尝试使用hibernate和struts2构建登录页面。 我的设计如下。 每个登录用户都有一个角色。 许多用户可以具有相同的角色。 所以我的课是: User.java 角色.java 如果有效,它将返回1个用户。 但是由于该方法使该用户返回,因此我使用ret ...

3 没有动作映射 - Struts 2

下午好, 我意识到这个问题已被问过多次,但这些问题主要是由于将struts.xml文件放在不正确的位置或拼写错误的路径名或其他东西的人造成的。 我已经按照从Struts 2的网站上的教程在这里尽我所能,但不断收到以下错误: 我使用 Maven 作为我选择的构建工具 我的struts.x ...

4 struts2参数映射

表单是通过Ajax请求提交的,并且表单中的所有参数都以随机数作为前缀。 例如: 123456567_name,123456567_age(数字123456567是动态的) 我想将这些参数映射到名称和年龄的操作字段。 有没有办法告诉struts2做到这一点? ...

2012-09-17 02:48:33 1 888   struts2
5 Struts中的动作映射

我在一个struts项目中发现了这个动作映射: 并且在MyClass中没有方法名称=“ add”,但是有一个方法“ onAdd”我想知道在这种情况下struts是否知道方法的名称或它是错误的吗? 因为我在这个项目的很多动作图中都发现了这一点; 谢谢你的帮助; ...

6 Servlet映射/ Struts冲突

当用户单击链接时,我必须调用一个远程(不同域)Web服务来获取访问令牌,然后将它们重定向到该远程域上的另一个页面。 因此,我更新了web.xml以映射新的URL模式: 在JSP中,我有: 当我导航到test.jsp时,我看到: 显然,我已经验证了struts文件是否存在 ...

7 Struts映射异常

启动系统时出现异常,但是系统可能会继续出现该异常。 文档类型定义在struts配置XML中。 struts-config.xml 谁能帮我解决这个问题? ...

8 Struts2 没有 Action 映射

我正在使用Struts 2.3.15.2 。 我写了我的行动: 如果在 url 中我调用localhost:8080/myProject/ricerca.action它可以工作。 如果我调用localhost:8080/myProject/ricerca!input.action它会抛出我的: ...

9 Struts 2没有映射动作

我有一个Struts 2应用程序,正在其中创建函数Export to Excel。 我正在使用不在s:form tag内的按钮 在exportTableToExcel()中,我正在进行ajax调用以发送html表(数据透视表报告数据)作为json数据发送。 在我的ajax调用中, ...

10 如何将请求参数映射到struts2中具有不同名称的bean

我知道Struts 2使用param拦截器从请求参数到动作类字段进行自动映射。 但是,如果我想将参数映射到具有不同名称的操作字段,该怎么办呢? 假设我有 如果我想将此映射到下面的字段 我该怎么做这个映射。 我可以用吗 如果是这样,我如何在动作类中获取请求对象? 它 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM