zoukankan      html  css  js  c++  java
  • Struts2 Jsp取action List及数据映射

    在struts2里一般用标签struts-tags可以取得action里的List,只需要在jsp的属性和action属性映射起来就可以了。

    但对于list的映射还是有一点需要注意到地方。

    1. Action里List定义要用泛型

      如: ShoppingCartAction的orderDetails,

            public class ShoppingCartAction extends ActionSupport {
                 private Collection<OrderDetail> orderDetails;

         Jsp取

        <s:iterator value="orderDetails">
              <tr>
                <td><input type="checkbox" name="productcode" value="${product.productcode}">${product.productcode}
                  <td><input type="text" name="orderDetail.quantityordered" value="${quantityordered}"></td>
                </tr>
           </s:iterator>

           list泛型类, 取值只需要属性名(quantityordered), 而类里的类需要加类名和属性名(product.productcode)

           而jsp提交以后映射Action里的属性, 就需要加类名和属性名(name="orderDetail.quantityordered")

    2. 数据类型转换

    Struts2自带了一些类型转换器,可以对HTTP字符串和下列 JAVA类型进行转换(自动进行):

    1)       String

    2)       Boolean/Boolean:truefalse字符串可以被转换成布尔值的原始类型有包装类.

    3)       Character/char:

    4)       Integer/int,Float/float,Long/long,Double/double

    5)       Date:当前LocaleSHORT格式的字符串,:98/10/11

    6)       Array:

    7)       List:默认使用String填充.

    8)       Map:默认使用String填充.

     

    例子:

    3)      List

    用法和数组一模一样.只不过JAVA中是List但注意,这里最好是用泛型来声明.不然它会自动将参数转换成String类型并存入List. 泛型用法:

    <input name=”names[0].username” />

    <input name=”names[1].username” />

    接收:List<User> names

    第一个Userusername为第一个input提交的值

    4)Map

    list不同,Map需要一个键,一个值.:

    <input name=”nameMap.mary” />

    <input name=”nameMap.hellen” />

    <input name=”nameMap[‘Sunyu’]” />

    上面一种用点语法,一种用方括号.但两种意思一样,当我们提交上面表单后,后台获得的值如下:

    Map<String,String> nameMap;值为:

    mary --- >第一input提交的值.

    hello --- >第二input提交的值.

  • 相关阅读:
    集合
    Java异常处理机制
    LEACH分簇算法实现和能量控制算法实现
    利用MATLAB仿真最小发射功率下WSN的连通性和覆盖率
    利用MATLAB仿真节点个数和节点通信半径与网络连通率的关系
    STM32液晶显示HT1621驱动原理及程序代码
    LMC7660即-5V产生电路
    LM431精密+3.3V产生电路
    锂电池充电电路、锂电池充电保护电路
    AMS1117降压电路
  • 原文地址:https://www.cnblogs.com/huozhicheng/p/2533148.html
Copyright © 2011-2022 走看看