Struts2 前端数据传递机制

用struts2接收Form表单数据的常用的情况

一、用struts2接收Form表单数据的常用几种情况

  1. 如果只是接收表单中的一两个属性值时,可以在action类中声明同名的全局私有属性,并且提供相应set以及get方法。
  2. 当有多个属性时,可以把属性封装到一个pojo类中,然后再在action类中声明一个pojo类的全局属性并提供set、get方法,通过对象.属性名的方法来获取数据。
  3. 当要获取多条数据时,在action类中声明List集合对象,把pojo类对象放进List集合中,在form表单提交时属性值用集合名称加上相应的集合下标[n],如:user[0].username 。

二、举例

以方式2为例子:

前端jsp文件 login.jsp 注意:name的写法!

<s:form action="login" method="post">
     <s:textfield name="user.username" key="username" size="20">
     <s:password name="user.password" key="password" size="21">
</s:password></s:textfield></s:form>

pojo文件 User.java

public class User {
    private String username;
    private String password;
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
}

Action文件 LoginAction.java

public class LoginAction extends ActionSupport{
   // get&#x3001;set&#x65B9;&#x6CD5;&#x83B7;&#x53D6;&#x5BF9;&#x8C61;
    private User user;
    public User getUser() {
        return user;
    }
    public void setUser(User user) {
        this.user=user;
    }

    // &#x6821;&#x9A8C;
    public void validate() {
        // &#x5BC6;&#x7801;&#x6B63;&#x786E;&#x4E0E;&#x5426;
        DBConn db=new DBConn();
        User login=new User();
        login.setUsername(user.getUsername());
        login.setPassword(user.getPassword());
    }

    public String execute() throws Exception {

    }
}

struts.xml

<action name="login" class="org.action.LoginAction">
    <result name="success">/index.jsp</result>
    <result name="error">/error.jsp</result>
</action>

Original: https://www.cnblogs.com/sevenkiki/p/15415242.html
Author: 琪有此理
Title: Struts2 前端数据传递机制

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/567454/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球