Struts2 分割字符串标签s:generator

Struts2 分割字符串标签s:generator
 有些时候会从后台返回一个字符串,可以通过Strut2的标签s:generator进行分割。
 
generator标签,该标签可以将指定字符串按指定分隔符分割成多个字串。生成的多个字串可以用iterator标签进行迭代输出。可以这么理解:generator标签将一个字符串转换成一个List集合。在该标签体内,整个临时生成的集合将为Valuestack的顶端,但一旦该标签结束,生成的集合将被移除Valuestack。generator标签有如下几个属性:
1、count属性:指定生成集合中元素的总数。可选属性。
2、val属性:必填属性,指定被解析的字符串。
3、separator属性:这是一个必填属性,指定用于分割字符串的分隔符。
4、converter属性:可选属性,指定一个转换器,转换器负责将生成的集合中的每个字符串转换成对象,通过这个转换器可以将一个含有分隔符的字符串解析成对象的集合。转换器必须一个继承org.apache.struts2.util.IteratorGenerator.Converter的对象。
5、var属性,可选属性。如果指定了该属性,则将生成的集合保存在Stack Context中。如果不指定该属性,则将生成的集合放入ValueStack的顶端,该标签一结束,生成的集合就被移除。该属性也可替换成id。
    s:generator将字符串分割成一个数组,分割后通过s:iterator标签
 
    1. <s:generator val="‘a,b, c‘" separator="," id="iter1">   
    2. </s:generator>  
    3. <s:iterator status="st" value="#request.iter1" id="name">   
    4.     <tr >   
    5.         <td><s:property value="name"/></td>   
    6.     </tr>   
    7. </s:iterator>   
当s:generator标签需要分割的字符串为Action传递的值时,写明参数名称即可

   <s:generator val="%{type}"   separator="#">
   <s:iterator>
      <s:property /><br/>
   </s:iterator>
</s:generator>

      <s:generator val="%{type}"  separator="#" id="tt" >   在这里产生一个名为tt的list
   <s:iterator status="st" value="#tt" id="ty" >  加#是引用产生的那个list  id是当前标签的别名
       <s:property value="ty"/><br/>
   </s:iterator>
</s:generator>
时间: 2024-10-10 09:20:36

Struts2 分割字符串标签s:generator的相关文章

Struts2之控制标签

Struts2的控制标签,主要用于完成流程控制,以及对ValueStack中的控制,控制标签可以完成输出流程的控制,例如循环.分支等操作,也可以完成对集合的合并.排序等操作. 1.常用的控制标签有:if.elseif.else.iterator.append.merge.generator.subset.sort等. 下面分别对这些控制标签进行介绍,并介绍如何使用这些控制标签: (1).if.elseif.else标签:if标签用来控制基本的条件处理流程,通常和else标签或者elseif标签连

struts2的&lt;constant/&gt;标签使用

<?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> <!-- 指定W

Struts2的OGNL标签详解

一.Struts2可以将所有标签分成3类: UI标签:主要用于生成HTML元素的标签. 非UI标签:主要用于数据库访问,逻辑控制等标签. Ajax标签:用于Ajax支持的标签. 对于UI标签,则有可以分为两类: 表当标签:表单标签主要用与生成HTML页面的from元素,以及普通表单元素的标签. 非表单标签:非表单标签主要用于生成页面的树.Tab页等. 流程控制标签:主要包含用于实现分页.循环等流程的标签. 数据访问标签:主要包含用于输出ValueStack中的值,完成国际化等功能的标签. Str

Struts2中datetimepicker标签

在以前的struts2版本中s:datetimepicker只需要在head标签处设置<s:head theme="ajax"/>,就可以直接使用s:datetimepicker的标签了.而在2.1.6版本中不能直接这样使用了,将datetimepicker移除了.原因是此标签调用了dojo的datetimepicker的库.所以现在使用的时候首先要导入一个库:struts2-dojo-plugin-2.1.6.jar.然后还要设置dojo的taglib<%@ tag

struts2之url标签详解

ognl标签里面有个url标签,该标签和jstl的url标签功能差不多. 不过ognl这个更方便. value值代表生成的url地址,var是个临时变量 <s:url value="/demo" var="url1"></s:url> 使用el表达式把该值打印出来. ${url1} 结果显示. /struts/demo 这里的struts代表项目名,/demo就是上面的value值. 这个是一个最简单的演示. 第二个: <s:url v

struts2 s:if标签以及 #,%{},%{#}的使用方法

<s:if>判断字符串的问题: 1.判断单个字符:<s:if test="#session.user.username=='c'"> 这样是从session中取出username的值,并且判断其是否为c,但是这样判断是不正确的,这样判断的话,根本判断不出来,要改成下面这样: <s:if test="#session.user.username=='c'.toString()"> 这样判断才能正确判断,至于原因我也不知道,在网上看到

Struts2之数据标签(一)

一.Struts2的数据标签主要用于提供各种数据访问相关的功能,包括显示一个Action里的属性,以及生成国际化输出等功能.数据标签主要包括:property.set.push.param.bean.action.include.url.i18n和text.date及debug标签等. 1.property标签:用于输出value属性指定的值.可以与<s:bean>标签结合使用,一个是给bean赋值,一个是从bean中读取值. (1).如果没有指定value属性,默认输出valueStack(

Struts2中UI标签之表单标签的一个例子

1.最近写了一篇文章,介绍了一下Struts2中UI标签的表单标签,文章地址为:http://blog.csdn.net/u012561176/article/details/44986183  因为缺少了个例子,大家看文字和表格也看不出什么效果来,所以今天来介绍一个例子,用Struts2中UI标签的表单标签实现一个个人信息的表单,但是有些表单标签没有演示出来,大家可以根据我介绍UI标签的表单标签来进行学习,这里只是给个例子. 2.首先新建一个Struts2项目,项目名为PersonMess

js,java,jstl多分隔符分割字符串

1.js多分隔符 分割字符串 var username = “zhao,li;wang.liu”: var arr = str.split(/;|:|,|,|./);  括号里面可以写多分割符号,中英文均可,注意每个分割符之间用"|"隔开, 如果是特殊分割符号,如点,加号,必须使用转义字符表示 如 str.split(".") 应该写成 str.split([.]); 2.java多分隔符 分割字符串 String[] name = str.split("