zoukankan      html  css  js  c++  java
  • 框架学习之Struts2 第九节 Struts2重要的标签解说

    1. 迭代标签:iterator标签

    29

    2. if-else 标签

    29_2

    3.url标签

    29_3

    4.复选框  checkboxlist

    形成复选框的list有三种方法:

    ①list

    ②map

    ③JavaBean的集合

    29_429_5

    5.单选框 radio

    使用方法和checkboxlist基本上一样

    幻灯片60

    6. 下拉选择框 select

    使用方法和checkboxlist也基本上相似

    幻灯片61

    测试:

    index.jsp:
    <%@ page language="java" import="java.util.*,com.javabean.Person" pageEncoding="GBK"%>
    <%@ taglib uri="/struts-tags" prefix="s" %>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>

    <title>My JSP 'index.jsp' starting page</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    </head>

    <body>
    <font>演示iterator标签:第一个是红色,最后一个是蓝色,奇数个是绿色,偶数个是黑色</font><br>
    <s:set name="namelist" value="{'yinger','java','struts','spring','eclipse'}"></s:set>
    <s:iterator value="#namelist" status="st">
    <font color=&lt;s:if test="#st.isFirst()">red</s:if><s:elseif test="#st.isLast()">blue</s:elseif>
    <s:elseif test="#st.isOdd()">green</s:elseif><s:elseif test="#st.isEven()">black</s:elseif>>
    <s:property/><br>
    </font>
    </s:iterator>
    <font>演示url标签</font><br>
    <s:set name="urlname" value="yinger" scope="request"></s:set>
    <s:url action="helloworld" namespace="/test">
    <s:param name="name" value="#request.urlname"></s:param>
    </s:url><br>
    <s:set name="myurl" value="'http://www.helloworld.com'"></s:set>
    使用#myurl,这时会原样输出:
    <s:url value="#myurl"></s:url><br>
    使用%{#myurl}把myurl当做字符串处理:
    <s:url value="%{#myurl}" /><br>
    <font>演示checkboxlist标签</font><br>
    采用list生成checkboxlist:value属性表示选中了
    <br>
    <s:checkboxlist name="ckblist_list" list="#namelist" value="{'yinger'}"></s:checkboxlist><br>
    采用map生成checkboxlist:listkey的值是input的value值,listvalue的值是label的文本
    <br>
    <s:checkboxlist name="ckblist_map" list="#{1:'food',2:'toy',3:'wine'}" listKey="key" listValue="value" value="{1,2}"></s:checkboxlist>
    <br>
    采用javabean生成checkboxlist:注意javabean的属性一定要提供相应的get方法
    <br>
    <%
    Person p1
    =new Person(1,"yinger");
    Person p2
    =new Person(2,"eclipse");
    Person p3
    =new Person(3,"oracle");
    Person p4
    =new Person(4,"tomcat");
    List list
    =new ArrayList();
    list.add(p1);
    list.add(p2);
    list.add(p3);
    list.add(p4);
    request.setAttribute(
    "personlist",list);
    %>
    <s:checkboxlist name="ckb_beans" list="#request.personlist" listKey="id" listValue="name" value="1"/>
    <br>
    <font>演示radio标签</font><br>
    采用list生成radio
    <br>
    <s:radio name="radio_list" list="#namelist" value="'yinger'" /><br>
    采用map生成radio
    <br>
    <s:radio name="radio_map" list="#{1:'瑜珈用品',2:'户外用品',3:'球类',4:'自行车'}" listKey="key" listValue="value" value="1" /><br>
    采用javabean生成radio
    <br>
    <s:radio name="radio_beans" list="#request.personlist" listKey="id" listValue="name" value="1"/><br>
    <font>演示select标签</font><br>
    采用采用javabean生成select:
    <s:select name="select_beans" list="#request.personlist" listKey="id" listValue="name"/><br>
    采用list生成select:
    <s:select name="select_list" list="#namelist" value="'yinger'" /><br>
    采用map生成select
    <s:select name="select_map" list="#{1:'瑜珈用品',2:'户外用品',3:'球类',4:'自行车'}" listKey="key" listValue="value" value="1" /><br>
    </body>
    </html>

      

    测试结果:

    29

    7.<s:token />标签:防止重复提交

    方法步骤是:

    ①在界面jsp的form表单中添加token标签

    ②在action的配置中添加一些信息:interceptor-ref  和  名为 invalid.token 的视图

    注意在关联token拦截器之前要关联框架自带的默认的拦截器defaultStack

    幻灯片62

  • 相关阅读:
    一道打印的面试题
    Quartz使用总结
    子类和父类之间的静态代码块、静态方法、非静态代码块、构造函数之间的执行关系
    springboot使用 @EnableScheduling、@Scheduled开启定时任务
    springboot的Interceptor、Filter、Listener及注册
    ConcurrentHashMap 的工作原理及代码实现
    为什么Hashtable ConcurrentHashmap不支持key或者value为null
    Android 通过Java代码生成创建界面。动态生成View,动态设置View属性。addRules详解
    Android 自定义title 之Action Bar
    Android常用控件之GridView与ExpandableListView的用法
  • 原文地址:https://www.cnblogs.com/yinger/p/2120357.html
Copyright © 2011-2022 走看看