2013-04-28 47 views
3

我会试着用一个例子来解释我的问题。我正在创建一个登录页面。我将索引页面的用户名和密码传递给操作类进行验证。如果一切正常,然后使用strus.xml,我打开一个新的JSP。现在,我不想显示在新JSP上登录的用户的名称。这里有一个例子struts.xml的如何使用Struts2将参数从动作类传递到JSP?

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE struts PUBLIC 
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" 
    "http://struts.apache.org/dtds/struts-2.0.dtd"> 
<struts> 
    <package name="login" extends="struts-default"> 
     <action name="tryLogin" class="action.LoginAction"> 
      <result name="success" >/success.jsp</result> 
      <result name="login">/login.jsp</result> 
      <result name="input">/login.jsp</result> 
     </action> 
    </package> 
</struts> 
+0

我觉得你应该去通过Struts2的提供的模型驱动接口,它是这些perpose只要。 – CodeHunter 2013-04-30 06:06:42

回答

1

在动作类只需创建“用户登陆”变量与公共gettersetter

public LoginAction extends ActionSupport { 

    private String userLogin; 

    public String execute{ 
    ... some code..... 
    } 

    public String getUserLogin(){ 
    return userLogin; 
    } 

    public void setUserLogin(String login){ 
    this.userLogin= login; 
    } 
} 

Struts2的ParametersInterceptor将请求获得的参数值,并将其设置自动执行参数。

2要阅读的行动结果JSP页面这个参数只是使用一些Struts标签

<s:property value="userLogin"/>, 
    <s:textfield name="userLogin"/>, 

等。

+0

我在我的动作类中有变量。更确切地说,我有一个变量,getters和setter的对象。我需要添加其他东西到我的struts.xml吗? – 2013-04-28 17:28:18

+0

不,没有什么可以添加的 – Ouadie 2013-04-28 17:42:25

相关问题