• struts2中jsp页面与action之间的传值


    一、从jsp页面中取值

    a)      设计JavaBean

    Java类

    public class Student {
        String name;
        String sex;
        Long id;
        int age;
        public int getAge() {
            return age;
        }
        public void setAge(int age) {
            this.age = age;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            this.sex = sex;
        }
        public Long getId() {
            return id;
        }
        public void setId(Long id) {
            this.id = id;
        }
      
    }

    b) 编写action类,定义变量且提供getter和setter方法,传递过来的参数会封装在stu中,用getter方法取值就可以

    StudentAction类

    public class StudentAction {
        //获取jsp中的学生信息
        Student stu ;
        public void setStu(Student stu) {this.stu = stu;}
        public Student getStu() {return stu;}
        
        public String execute() throws Exception {
            System.out.println("已提交学生是:"+stu1.name+" "+stu1.age+"岁  "+stu1.sex+" "+stu1.id+" "
                    +address1.province+address1.city);
                    return "loginresult";
        };
    }

    c)      设计表单,在jsp页面中直接用  <对象名.属性名>获取.(emmm。。其中过程我也有点懵,只知道可以这样写,怕忘了所以先记着)

    student.jsp

    <form action="StudentAction">
               学生姓名:<input type="text" name="stu.name"/></br></br>
               学生年龄:<input type="text" name="stu.age"/></br></br>
               学生编号:<input type="text" name="stu.id"/></br></br>
               学生性别:<input type="text" name="stu.sex"/></br></br>
               学生籍贯:<input  type="text" name="address.province"/></br></br>
               学生地址 :<input  type="text" name="address.city"/></br></br>
               
               <input type="submit" value="提交">
      </form>

    d) 配置好web.xml和struts.xml文件

    struts.xml

    <struts>
        <constant name="struts.devMode" value="true"/>
        <package name="gsonTest" extends="struts-default">
     
            <action name="StudentAction" class="gsonTest.StudentAction">
             <result name="loginresult">success.jsp</result>
            <result name="input">/error.jsp</result>
            
            </action>
            
        </package>
        
    </struts>

    package:name=“包名”

    action : name = "jsp页面中的action名称" ,class = "包名.action类名"

    d)  输出结果

    二、action传值到jsp页面

    1)      在action类中一定义一个成员变量,然后对这个成员变量提供get/set方法

    StudentAction类

        Student stu ;
        public void setStu(Student stu) {this.stu = stu;}
        public Student getStu() {return stu;}        

    2)    导入struts标签库,用<s>标签获取值,或者用el表达式 ${stu.getName()}

    success.jsp

    ${stu.getName()};
     学生姓名:<s:property value="stu.getName()"/></br></br>
     学生编号:<s:property value="stu.getId()"/></br></br>
     学生性别:<s:property value="stu.getSex()"/></br></br>
     学生年龄:<s:property value="stu.getAge()"/>

    3) 效果

  • 相关阅读:
    c#读取.config文件内容
    c# 读取配置文件方法
    C# Log4net详细说明
    C# 运算符集
    LeetCode 69_ x 的平方根
    LeetCode 172 _ 阶乘后的零
    LeetCode 171 _ Excel表列序号
    LeetCode 88 _ 合并两个有序数组
    LeetCode 581 _ 最短无序连续子数组
    LeetCode 283 _ 移动零
  • 原文地址:https://www.cnblogs.com/Rong-Xiu/p/11960205.html
Copyright © 2020-2023  润新知