• struts2学习笔记系列(四)


    今天介绍action之间的传值:通过在struts.xml文件中进行设置,并在最终的jsp页面中显示传递的值

    一、新建项目,并建立两个action,传值在这两个action中进行。

         login.java

     1 package com;
     2 
     3 public class Login {
     4     private String MyContent;
     5     public String execute() {
     6         this.setMyContent("123456789");
     7         return "chuandi";
     8     }
     9     public String getMyContent() {
    10         return MyContent;
    11     }
    12     public void setMyContent(String myContent) {
    13         MyContent = myContent;
    14     }
    15     
    16 }

         MyContent就是传递的值,在这个action中为其赋值。
         list.java

     1 package com;
     2 
     3 import java.util.ArrayList;
     4 
     5 import com.sun.org.apache.bcel.internal.generic.NEW;
     6 
     7 public class List {
     8     private String content;
     9     private ArrayList bookList = new ArrayList();
    10     
    11     public String getContent() {
    12         return content;
    13     }
    14 
    15     public void setContent(String content) {
    16         this.content = content;
    17     }    
    18 
    19     public ArrayList getBookList() {
    20         return bookList;
    21     }
    22 
    23     public void setBookList(ArrayList bookList) {
    24         this.bookList = bookList;
    25     }
    26 
    27     public String execute() {
    28         bookList.add("book1");
    29         bookList.add("book2");
    30         bookList.add("book3");
    31         bookList.add("book4");
    32         bookList.add("book5");
    33         return "bookListJsp";
    34     }
    35 }

         二、在struts.xml文件中配置

     1 <?xml version="1.0" encoding="GBK" ?>
     2 <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
     3 <struts>
     4 <constant name="struts.il8n.encoding" value="gb2312"/>
     5     <package name="struts2" extends="struts-default" namespace="/">
     6         <action name="login" class="com.Login">
     7             <result name="chuandi" type="redirectAction">
     8                 <param name="actionName">List</param>
     9                 <param name="content">${MyContent}</param>
    10             </result>
    11         </action>
    12         <action name="List" class="com.List">
    13             <result name="bookListJsp">/WEB-INF/content/MyJsp.jsp</result>
    14         </action>
    15     </package>
    16 </struts>    

         在这段代码中constant是配置常量,name和value属性是必须的属性!指定struts中的字符编码是gb2312.
         <param name="content">${MyContent}</param>是设置传递的参数,在新建的jsp页面中显示的参数必须是“content”,而MyContent必须好login.java中的一样!

       三、新建jsp页面

      MyJsp.jsp

     1 <body>
     2     <center>
     3         这是传递的参数:${param.content}--在这里显示 <br>
     4         <c:forEach var="bookName" items="${bookList}">
     5             <c:out value="${bookName}">
     6             </c:out>
     7             <br>
     8         </c:forEach>
     9     </center>
    10 </body>

    在浏览器中输入地址:  http://localhost:8080/strutsTest3/login.action

    最终显示的页面如下:

       

  • 相关阅读:
    重复造轮子感悟 – XLinq性能提升心得
    分享动态拼接Expression表达式组件及原理
    拦截Response.Redirect的跳转并转换为Js的跳转
    高仿QQ即时聊天软件开发系列之三登录窗口用户选择下拉框
    高仿QQ即时聊天软件开发系列之二登录窗口界面
    高仿QQ即时聊天软件开发系列之一开端
    关于404二级目录或三级目录不显示图片的方法
    如何在cmd查看文件内容的MD5值
    VMware虚拟机下载与安装
    dede自定义表单放首页出错的解决办法
  • 原文地址:https://www.cnblogs.com/shangwuyuyi/p/2800296.html
Copyright © 2020-2023  润新知