博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2视频学习笔记 29-30(Struts 2常用标签,防止表单重复提交)
阅读量:4967 次
发布时间:2019-06-12

本文共 2381 字,大约阅读时间需要 7 分钟。

课时28

  • Struts 2常用标签解说

    property标签

property标签用于输出指定值:
default:可选属性,如果需要输出的属性值为null,则显示该属性指定的值escape:可选属性,指定是否格式化HTML代码。value:可选属性,指定需要输出的属性值,如果没有指定该属性,则默认输出ValueStack栈顶的值。id:可选属性,指定该元素的标识

 

    iterator标签

iterator标签用于对集合进行迭代,这里的集合包含List、Set和数组。
red
blue
>
value:可选属性,指定被迭代的集合,如果没有设置该属性,则使用ValueStack栈顶的集合。id:可选属性,指定集合里元素的id。status:可选属性,该属性指定迭代时的IteratorStatus实例。该实例包含如下几个方法: int getCount(),返回当前迭代了几个元素。 int getIndex(),返回当前迭代元素的索引。 boolean isEven(),返回当前被迭代元素的索引是否是偶数 boolean isOdd(),返回当前被迭代元素的索引是否是奇数 boolean isFirst(),返回当前被迭代元素是否是第一个元素。 boolean isLast(),返回当前被迭代元素是否是最后一个元素。

 

     if/elseif/else标签

 

23
21
都不等

 

 

     url标签(默认情况作超链接<a href="">...</a>)(好处:不用加上下文路径和后缀)

    生成类似如下路径:

    /struts/test/helloworld_add.action?personid=23
    红色部分为内容路径。

    当标签的属性值作为字符串类型处理时(struts2标签属性值默认接受OGNL表达式), “%”符号的用途是计算OGNL表达式的值。

    输出结果:

    #myurl
    http://www.foshanshop.net
   

     表单标签_checkboxlist复选框

     如果集合为list

生成如下html代码:

 

    如果集合为MAP

生成如下html代码:

 

    如果集合里存放的是javabean

<%  Person person1 = new Person(1,"第一个");  Person person2 = new Person(2,"第二个");  List
list = new ArrayList
(); list.add(person1); list.add(person2); request.setAttribute("persons",list); %>
Personid和name为Person的属性生成如下html代码:

 

    表单标签_radio单选框

    该标签的使用和checkboxlist复选框相同。

    如果集合里存放的是javabean(personid和name为Person的属性)

< s:radio name="beans" list="#request.persons" listKey="personid" listValue="name"/>生成如下html代码:

    如果集合为MAP

生成如下html代码:

    如果集合为list

生成如下html代码:

 

   表单标签_select下拉选择框

生成如下html代码:
生成如下html代码:
生成如下html代码:

   

课时30

  • 使用标签防止表单重复提交

  <s:token />标签防止重复提交,用法如下:

  第一步:在表单中加入<s:token />

姓名:

  第二步:

/index.jsp
/page.jsp

  以上配置加入了“token”拦截器和“invalid.token”结果,因为“token”拦截器在会话的token与请求的token不一致时,将会直接返回“invalid.token”结果。提交后,服务器端的token(存放在session上)会发生变化,再次提交,客户端与服务器端token不相同

转载于:https://www.cnblogs.com/zziy/p/4919956.html

你可能感兴趣的文章
react里面引入图片
查看>>
问题分析
查看>>
P4安装
查看>>
HDU 3664 (水地推)
查看>>
AndroidPullToRefresh拉动效果配置
查看>>
C#程序员经常用到的10个实用代码片段
查看>>
cmd下 mysql操作命令大全详解
查看>>
搭建Rails 的 Ext后台:Lipsiadmin
查看>>
前端学习(三十一)canvas(笔记)
查看>>
tomcat的下载和启动
查看>>
java中new关键字解析
查看>>
babel吐槽
查看>>
python_11 装饰器,闭包
查看>>
Qt历史版本下载网址
查看>>
dede调取文章内容的第一张图片
查看>>
jsp页面数据保留两位小数
查看>>
利用Struts2拦截器完成文件上传功能
查看>>
《剑指Offer》算法题——替换空格
查看>>
【洛谷 1908】逆序对
查看>>
codeforces 764 C. Timofey and a tree(dfs+思维)
查看>>