strus2常用标签自己一点小小的应用2

6、 下拉框<s:select>

<s:select name="" value="" list="" listKey="" listValue=""></s:select>

这里有三种用法:第一种用法,直接从页面取值展现选择:

<s:select name="emp.city"  theme="simple" value="'2'" list="#{'1':'西安','2':'北京','3':'天津','4':'南京'}"></s:select>

这里,list里面是一个一个的键值对,注意的是每个必须要用’’来包含。Value=””,表示的是默认的选项,

第二种用法,listaction传递过来,list里面包含的是一个一个对象。其实value里面的值也可以传递过来,这里没那么做,都是一样的用法。

 <s:select name="emp.city"  theme="simple" value="'1'" list="list" listKey="cid" listValue="cname"></s:select>

action存储的list

    private  static List<City> list;

    static{   list = new LinkedList<City>();

        list.add(new City(1,"北京"));  list.add(new City(2,"上海"));  list.dd(new City(3,"杭州"));

        list.add(new City(4,"成都"));   list.add(new City(5,"西安")); }

而,City类为:

public class City { private int cid;private String cname;}因为这里是默认存储在ValueStrack中,所以可以直接取值,listKey这里指的是CitycidlistValue指的是这里的是Citycname

第三种用法:list里面存储的是map

<s:select name="emp.city"  theme="simple" value="'1'" list="map" />

action中存储的是:private static Map map;

static{map= new HashMap();  map.put(1, "成都");  map.put(2, "上海"); map.put(3, "北京")}

它会把map中的键当做值,map中的值当作页面展现的值

7、 多选框<s:checkbox/>

  <s:checkboxlist  name=" " list=" " listKey="" listValue="" value=""></s:checkboxlist>

第一种用法:listaction中传递过来一个list容器,

  <s:checkboxlist theme="simple" name="emp.xqid" list="xqs" listKey="xqid" listValue="xqmc" value="{1,3}"></s:checkboxlist>

   action中: private List<Xq> xqs

static{  xqs= new ArrayList<Xq>();  xqs.add(new Xq(1, "足球"));

            xqs.add(new Xq(2, "篮球")); xqs.add(new Xq(3, "排球"));

           xqs.add(new Xq(4, "乒乓球"));  xqs.add(new Xq(5, "网球"));}

Xq对象为:public class Xq { private int xqid;  private String xqmc;}

第二种写法:

<s:checkboxlist theme="simple" name="emp.xqid" list="#{'1':'足球','2':'蓝球','3':'排球','4':'网球','5':'乒乓球','10':'爬山'}" value="{'1','3'}"></s:checkboxlist>

请注意这里的list要加”#”来引出数据

第三种写法:

<s:set name="xqs" value="#{'1':'足球','2':'蓝球','3':'排球','4':'网球','5':'乒乓球','10':'爬山'}"></s:set>

 <s:checkboxlist theme="simple" name="emp.xqid" list="xqs" value="{'1','3'}"></s:checkboxlist>

这里主要是先把值存储起,然后在展开取值

第四中用法:list的值从ValueStrack中取出的是一个装有对象的list容器。

比如说 <s:checkboxlist list="xtjss" name="jsbhs" listKey="jsbh" listValue="jsmc" value="myjsbh" ></s:checkboxlist>

list是装有的是存放 private List<Xtjsb> xtjss = new ArrayList<Xtjsb>();

listKey="jsbh" listValue="jsmc"指的是

public class Xtjsb  implements java.io.Serializable {

     private Integer jsbh; private String jsmc;

     private String jsms;  private Set yhjses = new HashSet(0);}

value="myjsbh"指的是private List<Integer> myjsbh = new ArrayList<Integer>();//自己之前的所拥有的角色编号,这个应用一般在修改的时候应用

8、取值存值标签 <s:set name=" "  value="" scope=”” ></s:set>

value指的是取值,如果是action中传过来的需要接收,name指的是以该名称存起来,scope指的是存储的范围

第一种用法:

<s:set name="xqs" value="#{'1':'足球','2':'蓝球','3':'排球','4':'网球','5':'乒乓球','10':'爬山'}" ></s:set>

这里是把该值以xqs存储起来,默认存储在page.

在从页面中取值:

<s:checkboxlist theme="simple" name="emp.xqid" list="xqs" value="{'1','3'}"></s:checkboxlist>

第二种用法:

action中存储了一个属性: private String h = "helo";默认在值堆栈中存储(ValueStrack)

在页面中取值 <s:set name="bb"  value="h"  scope="page"></s:set>

                    <s:property value="h"/>${bb}输出的内容是一样的

如果存储在request中那么取值为:

<s:set name="abc"  value="#request.h"  scope="page"></s:set>   ${abc}就用这样取值

9、 迭代标签<s:itertor>     <s:iterator value="" status="i">

第一种用法,迭代一组对象(Map对象)

  <s:iterator value="depts" ><!--每次迭代出来一个对象 -->

     <s:property value="value.deptid"/>--<s:property value="value.deptname"/>

-<s:property value="value.deptnum"/>--<s:property value="value.deptdesc"/><br>

   </s:iterator>

也可以这样写:默认的就是一个一个对象

     <s:iterator value="depts.values" ><!-- 每次迭代是得到的它的值的一个对象。-->

      <s:property value="deptid"/>--<s:property value="deptname"/>--

<s:property value="deptnum"/>--<s:property value="deptdesc"/><br>    </s:iterator>

第二种用法:记录下标(也是展现的是Map容器)

<s:iterator value="depts.values" status="i">

--${i.first}--${i.last}--${i.index}—(下标从”0”开始)  <s:property value="deptid"/>--

<s:property value="deptname"/>--<s:property value="deptnum"/>--<s:property       value="deptdesc"/><br>   </s:iterator>

i.first:表示的是首个下标(0开始)     i.last:表示最后一个下标      i.index:表示当前迭代时候的下标

第三中用法,value自己定义:

     <s:iterator  value="{'张三','李四','王五','赵六'}">

       <s:property/>会每次循环出value里面的值来的  </s:iterator>

10<s:property value=""/> 从jsp页面中取值得到action中属性的值

   用法1action中属性为普通类型

   private String s;   Jsp页面取值:<s:property value="s"/>

   用法2action中属性为对象类型,jsp页面取值该对象的属性

   private Dept dept;

    <s:property value="dept.deptid"/>-- <s:property value="dept.deptname"/>--

    <s:property value="dept.deptnum" />--   <s:property value="dept.deptdesc"/>

11<s:textfield name="" label="" theme="" />

     文本输入框,name指的是文本框名,label指的是页面显示名,theme一般 设置为simple

12、  <s:bean name="" id=" ">

              <s:param name="">****</s:param>  <s:property value="" /><br>

    </s:bean>jsp页面给po对象属性赋值。取值

比如说: package org.www.po;

public class Emp{

private int empid;  private String empname;………………getset方法略 }

jsp页面    <s:bean name=" org.www.po.Emp" id="uid">

              <s:param name="empid">1 </s:param>

                 <s:param name="empname">zhangsan</s:param>  <s:property value="empname" /><br>

           <s:property value="empid" />  </s:bean>

<s:property value=""/>就能取值,但是要注意的是这样写的话必须在<s:bean>内有效

13<s:set name="" value="" scope=””/>

   这里是把jsp页面中的一个值,以name存储起来。Scope存储的范围是在applicationsessionrequestpage………………。默认是存储在该action中。

   用法一: <s:set name="technologyName" value="{'Java','c++','php'}"/>

           <s:iterator value="technologyName"/></s:iterator>

这里的值是一个list容器,请注意:listset容器 不加”#”,map要加”#”

   用法二: <s:set name="one" value="111" />这个是整形, 如果value的值是个int或则long类型,那么就要在输出的时候加#,把它当作字符串输出,默认的是以字符串输出

    <s:property value="#one"/>要加#

    <s:set name="one" value="'111'" />这个是字符串 <s:property value="one"/>

用法三: <s:set name="one" value="'111'" scope="request"/>

  <s:property value="#request.one"/>

    <s:set name="one" value="'111'" scope="session"/>

  <s:property value="#session.one"/>

 <s:set name="one" value="'111'" scope="page"/>

<s:property value="#attr.one"/> attr.***默认是从 page, request, session, then application scopes

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值