struts2.0学习笔记(二)--常用UI标记

index.jsp

  1 <% @page contentType="text/html; charset=GBK" %>
  2 <% @taglib prefix="s" uri="/struts-tags" %>
  3
  4 <!--  
  5     Struts2UI标签的使用:
  6     1.使用s:checkboxlist生成多个复选框。
  7     2.使用s:combobox生成下拉输入框
  8     3.使用s:datetimepicker生成时间选择器
  9     4.使用s:doubleselect生成级联下拉列表框
 10     5.使用s:radio生成多个单选框
 11     6.使用s:token可以添加隐藏的表单域,以防止页面的重复提交操作
 12   -->
 13
 14 < html >
 15      <%
 16        //用到s:datetimepicker时必加的标签
 17    
%>
 18
 19      < s:head  />
 20      < body >
 21          < h3 >
 22             Struts2UI标签的使用:使用 s:checkboxlist生成多个复选框。
 23
 24          </ h3 >
 25          < s:form >
 26              <%
 27                //使用简单的集合(数组)生成复选框,list是静态列表选项
 28            
%>
 29              < s:checkboxlist  name ="a"  label ="选择图书"  labelposition ="top"
 30                 list ="{'Struts','J2EE','JSP','Hibernate'}"   />
 31
 32              <%
 33                //name="包名.DAO类名" id="产生的对象"
 34            
%>
 35              < s:bean  name ="com.DAO.BookDAO"  id ="bs"   />
 36
 37              <%
 38                //1.list="#bs.books" 是产生的对象bs会到BookDAO.java调用getBooks()方法[注意:这里books首字母要小写,BookDAO.java的getBooks()方法要大写]
 39                    //2.listKey="name" 是复选框的实际取值,向后台发送的数据,listValue="author"是复选框的标签,显示在前台中的信息(label)
 40            
%>
 41              < s:checkboxlist  name ="b"  label ="选择图书"  labelposition ="top"
 42                 list ="#bs.books"  listKey ="name"  listValue ="author"   />
 43
 44              <%
 45                //使用Map集合生成多个复选框
 46                    //.list的# 与{}之间必须有空格
 47                    //2.'Struts':'2004' 中'Struts'是key(向后台发送的数据);'2004'是value(显示在前台中的信息)
 48            
%>
 49              < s:checkboxlist  name ="c"  label ="出版日期"  labelposition ="top"
 50                 list ="# {'Java':'2005','JSP':'2006','Struts':'2007','Hibernate':'2008'}"
 51                 listKey ="key"  listValue ="value" ></ s:checkboxlist >
 52              < s:submit ></ s:submit >
 53          </ s:form >
 54          < hr >
 55          < h3 >
 56             使用s:combobox生成下拉输入框
 57          </ h3 >
 58          < s:form >
 59              <%
 60                //使用简单集合生成下拉输入框
 61            
%>
 62              < s:combobox  label ="请选择图书"  labelposition ="top"  theme ="css_xhtml"
 63                 list ="{'Java','JSP','Struts','Hibernate'}"  size ="20"  maxlength ="20"
 64                 name ="book" ></ s:combobox >
 65
 66              <%
 67                //使用后台集合获取相关下拉输入框
 68                    //1.struts中默认提供四套主题模板,theme="css_xhtml"是其中之一
 69                    //2.list="#bs.books" 是产生的对象bs会到BookDAO.java调用getBooks()方法[注意:这里books首字母要小写,BookDAO.java的getBooks()方法要大写]
 70                    //3.listKey="name" 是复选框的实际取值,向后台发送的数据,listValue="author"是复选框的标签,显示在前台中的信息(label)
 71            
%>
 72              < s:combobox  label ="请选择"  labelposition ="top"  theme ="css_xhtml"
 73                 list ="#bs.books"  listKey ="name"  listValue ="author"  size ="20"
 74                 maxlength ="20"  name ="book1" ></ s:combobox >
 75
 76          </ s:form >
 77          < hr >
 78          < h3 >
 79             用s:datetimepicker生成时间选择器
 80          </ h3 >
 81          < s:form  theme ="css_xhtml" >
 82              <%
 83                //1.name:时间组件的id名
 84                    //2.toggleType:邦定时间
 85                    //3.value:初始化时间
 86                    //4.displayFormat:时间显示的样式
 87                    //5.weekStartsOn:以周的形式显示时间日期
 88                    //6.type:修改时间选择器的选择内容
 89            
%>
 90             
 91                 (1)日期选择部件,指定toggleType属性,且指定value="today"(即默认选中的是当天的日期.) < br >
 92
 93              < s:datetimepicker  name ="order.date"  label ="购买日期"  toggleType ="explode"
 94                 value ="today"   />
 95                 
 96                 (2)日期选择部件,指定了format属性displayFormat="dddd年MM月dd日" < br >
 97
 98              < s:datetimepicker  name ="order.date"  label ="购买日期"
 99                 displayFormat ="dddd年MM月dd日"   />
100             
101                 (3)日期选择部件,指定了weekStartsOn属性,默认以周的形式开始 < br >
102
103              < s:datetimepicker  name ="order.date"  label ="购买日期"
104                 displayFormat ="dddd年MM月dd日"  weekStartsOn ="2"   />
105                 (4)时间选择部分
106              < s:datetimepicker  label ="出发日期"  name ="start"  type ="time"  value ="10:20"   />
107          </ s:form >
108          < hr >
109          < h3 >
110             使用s:doubleselect生成级联下拉列表框
111          </ h3 >
112          < s:form  action ="y" >
113              <%
114                //1.list:用于进行分类的列表
115                    //2.doubleList:用于控件联的动显示列表,使用doubleName来记载联动列表的取值
116                    //3.doubleList的取值使用:表达式进行判断,top表示分类列表的取值(实际操作中使用动态列表的赋值)                
117            
%>
118             
119              < s:doubleselect  label ="请选择图书"  list ="{'a','b'}"  doubleName ="book"
120                 doubleList ="top=='a'?{'Java','Struts','Hibernate','Jsp'}:{'其他选项1','其他选项2'}"   />
121          </ s:form >
122          < hr >
123          < h3 > 使用s:radio生成多个单选框 </ h3 >
124          < s:form  action ="z" >
125         (1)使用简单的集合(数组)生成多个单选框 < br >
126          < s:radio  name ="e"  label ="请选择图书"  labelposition ="top"  list ="{'Java','JSP','Struts','Hibernate'}" />
127         
128         (2)使用Map集合生成多个单选框 < br >
129          < s:radio  name ="f"  label ="出版时间"  labelposition ="top"  list ="#{'Java':'2005','Jsp':'2006','Struts':'2007','Hibernate':'2008'}"  listKey ="key"  listValue ="value" />
130          < s:bean  name ="lee.BookService"  id ="bs" />
131         
132         (3)使用集合里放多个JavaBean实例来生成多个单选框 < br >
133          < s:radio  name ="g"  label ="选择图书"  labelposition ="top"  list ="#bs.books"  listKey ="author"  listValue ="name" />
134          </ s:form >
135          < hr >
136          < h3 > 提交表单中s:token可以添加隐藏的表单域,以防止页面的重复提交操作. </ h3 >
137          < s:form >
138          < s:token />
139          </ s:form >
140      </ body >
141 </ html >


相关:
 1 web.xml
 2 <? xml version="1.0" encoding="UTF-8" ?>
 3 < web-app  id ="WebApp_ID"  version ="2.4"
 4     xmlns ="http://java.sun.com/xml/ns/j2ee"
 5     xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance"
 6     xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >
 7      < display-name > Struts2Hello </ display-name >
 8      < filter >
 9          < filter-name > struts2 </ filter-name >
10          < filter-class >
11             org.apache.struts2.dispatcher.FilterDispatcher
12          </ filter-class > <!--  以过虑器的形式出现  -->
13      </ filter >
14      < filter-mapping >
15          < filter-name > struts2 </ filter-name >
16          < url-pattern > /* </ url-pattern > <!--  过虑所有内容  -->
17      </ filter-mapping >
18      < welcome-file-list >
19          < welcome-file > index.html </ welcome-file >
20          < welcome-file > index.htm </ welcome-file >
21          < welcome-file > index.jsp </ welcome-file >
22          < welcome-file > default.html </ welcome-file >
23          < welcome-file > default.htm </ welcome-file >
24          < welcome-file > default.jsp </ welcome-file >
25      </ welcome-file-list >
26 </ web-app >
27

 1 struts.xml
 2 <! DOCTYPE struts PUBLIC
 3          "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
 4          "http://struts.apache.org/dtds/struts-2.0.dtd" >
 5 < struts >
 6      < include  file ="struts-default.xml"   /> <!--  使用缺省的struts的配置文件  -->
 7
 8      < package  name ="TagDemo"  extends ="struts-default" > <!--  包空间 admin 继承 struts-default  -->
 9          < action  name ="*" > <!--  试用通配符action的描述  -->
10              < result > /{1}.jsp </ result > <!--  {1}与*通配符的内容相对应,即action名={1}.jsp  -->
11          </ action >
12      </ package >
13 </ struts >
14

 

 1 Book.java
 2 package  com.pojo;
 3
 4 import  java.io.Serializable;
 5
 6 /** */ /**
 7 * @author Administrator
 8 * @version 2008 08 17
 9 */

10 public   class  Book  implements  Serializable {
11    /** *//**
12     * 
13     */

14    private static final long serialVersionUID = -4565886033215350973L;
15    private String name;
16    private String author;
17
18    public Book() {
19
20    }

21
22    public Book(final String name, final String author) {
23        super();
24        this.name = name;
25        this.author = author;
26    }

27
28    public String getName() {
29        return name;
30    }

31
32    public void setName(final String name) {
33        this.name = name;
34    }

35
36    public String getAuthor() {
37        return author;
38    }

39
40    public void setAuthor(final String author) {
41        this.author = author;
42    }

43
44}

45

 

 1 BookDAO.java
 2 package  com.DAO;
 3
 4 import  com.pojo.Book;
 5
 6 /** */ /**
 7 * @author ∪∩BUG E-mail: [email protected]
 8 * @version Aug 17, 2008 11:29:49 PM 类说明
 9 */

10
11 public   class  BookDAO  {
12    //业务方法
13    public Book[] getBooks() {
14        return new Book[] new Book("a""Struts"), new Book("b""JSP"),
15                new Book("c""J2EE"), new Book("d""Hibernate") }
;
16    }

17}

18


 

你可能感兴趣的:(struts2.0学习笔记(二)--常用UI标记)