1.新建JavaBean实例
package com.wl.control.Bean;
public class UserInfo {
private String name;
private int weight;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getWeight() {
return weight;
}
public void setWeight(int weight) {
this.weight = weight;
}
}
2.新建Action实例
package com.wl.control.tagsAction;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
import com.wl.control.Bean.UserInfo;
public class ShowSortList extends ActionSupport {
private List listUserInfo=new ArrayList();
public List getListUserInfo() {
return listUserInfo;
}
public void setListUserInfo(List listUserInfo) {
this.listUserInfo = listUserInfo;
}
@Override
public String execute() throws Exception {
UserInfo u1=new UserInfo();
u1.setName("张三");
u1.setWeight(140);
UserInfo u2=new UserInfo();
u2.setName("李四");
u2.setWeight(110);
UserInfo u3=new UserInfo();
u3.setName("王五");
u3.setWeight(120);
listUserInfo.add(u1);
listUserInfo.add(u2);
listUserInfo.add(u3);
return "showsortlist";
}
}
3.新建排序类
package com.wl.operator.util;
import java.util.Comparator;
import com.wl.control.Bean.UserInfo;
public class SortWeight implements Comparator {
public int compare(Object arg0, Object arg1) {
if(((UserInfo)arg0).getWeight()>((UserInfo)arg1).getWeight()){
return 1;
}else{
return -1;
}
}
}
注释:排序类要实现Comparator接口,并且重写compare()方法。
4.新建JSP文件
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<s:bean name="com.wl.operator.util.SortWeight" var="sortref"></s:bean>
<s:sort comparator="sortref" source="listUserInfo" var="newListUserInfo">
<s:iterator var="userInfoRef" value="#attr.newListUserInfo">
姓名:<s:property value="#userInfoRef.name"/>
体重:<s:property value="#userInfoRef.weight"/>
<br/>
</s:iterator>
</s:sort>
</body>
</html>
5.修改struts.xml文件
<?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>
<package name="Struts2.1" extends="struts-default">
<action name="showsortlist" class="com.wl.control.tagsAction.ShowSortList">
<result name="showsortlist">/controlTags/showsortlist.jsp</result>
</action>
</package>
</struts>
6.运行结果:

- 大小: 31.5 KB
分享到:
相关推荐
`<s:set>` 赋值给变量,`<s:sort>` 对集合进行排序,`<s:submit>` 创建提交按钮,`<s:subset>` 输出集合的子集。 T. `, , , , <s:textfield>`: 创建选项卡面板、表格、国际化文本、文本区域和文本输入框。 U. `, ,...
下面将详细介绍Struts2标签库中的部分常用标签,并将其与Struts1进行对比,以便更好地理解它们的功能。 #### 1. `<s:a>` 和 `<s:action>` - **`<s:a>`**:该标签用于创建一个超链接,类似于HTML中的`<a>`标签。与...
Struts2标签库是开发Java Web应用程序时常用的一种工具,它极大地简化了JSP页面的编写,提高了开发效率。在JSP中,我们通常使用`<%@ taglib prefix="s" uri="/struts-tags" %>`来引入Struts2的标签库。下面将详细...
- `<s:sort>` 通过比较器对列表进行排序。 - `<s:submit>` 创建提交按钮,触发表单的提交。 - `<s:subset>` 似乎在文档中没有明确描述,可能是遗漏或拼写错误,通常不常见。 以上只是Struts2标签库的一部分,实际...
### Struts2标签详解及具体实例解析 #### 一、概述 Struts2是一个基于MVC模式的开源框架,它提供了丰富的标签库来简化Web应用的开发过程。这些标签不仅功能强大,而且易于使用,可以帮助开发者快速构建动态网页。...
1. **逻辑控制标签**:这类标签用于实现条件判断和循环操作。 - **条件标签**:包括`s:if`、`s:elseif`和`s:else`,它们与Java中的`if-else`语句类似,但更方便地集成在JSP中。 - **迭代标签**:`s:iterator`用于...
在Struts2中,提供了丰富的标签库来简化视图层的开发,其中包括`sort`标签,它允许我们在JSP页面上对数据集合进行排序。这个实例将深入探讨如何使用`struts2 sort`标签及其相关概念。 首先,`sort`标签是Struts2的...
sort标签:多指定的集合元素进行排序。 数据标签: action:直接调用一个Action,根据executeResult参数,可以将Action的处理结果包含到页面中。 bean:创建一个JavaBean实例。。 date:格式化输出一个日期属性。 ...
与 Struts 1.x 版本相比,Struts2 在标签库的设计上进行了重大的改进和优化。 #### 标签库概述 在 Struts 1.x 中,标签库主要分为四大类:`html`、`bean`、`logic`、`tiles`。而在 Struts2 中,所有的标签都被统一...
本示例重点展示了Struts2框架如何与各种集合类型,如Set、List和Map进行集成和操作。 在Web应用程序中,集合数据结构经常被用来存储和管理动态的数据。Set集合不包含重复元素,按照插入顺序或特定规则排序,例如...
对集合或列表进行排序,支持自定义比较器和排序方向。 #### `<s:submit>` 标签 生成提交按钮,触发表单提交事件,支持多种样式和事件绑定。 #### `<s:subset>` 标签 从集合中提取子集,支持按索引或条件筛选。 ...
Struts2提供了丰富的逻辑控制标签,极大地简化了开发工作。 ##### 1)条件标签 条件标签主要用于执行基本的条件流转。 - **`<s:if>`**:此标签拥有一个`test`属性,通过表达式的值来决定标签里的内容是否显示。...
以下是对Struts2中一些常用标签的详细说明: 1. `<s:a>`:这是一个超链接标签,用于创建HTML的`<a>`标签。通过指定`href`属性,可以链接到指定的URL。与HTML的`<a>`标签不同,它还可以结合Struts2的Action映射,...
为了对集合中的元素进行排序,Struts2提供了`<s:sort>`标签。可以通过自定义的比较器(`Comparator`)来控制排序规则。 ```xml <s:sort source="userList" comparator="#myComparator"> ... ``` 这里`...
下面将对每个标签进行详细的介绍。 #### 三、具体标签详解 1. **<s:a> 超链接** - **用途**:创建超链接。 - **示例**: ```xml <s:a href="%{exampleAction}">Example Link ``` 2. **<s:action> 执行Action...
Struts2提供了丰富的标签库,其中“S标签”(S-tags)是一种特殊的标签集合,用于简化页面上的数据绑定以及页面逻辑处理。S标签的设计目标是减少对脚本语言(如JSP EL表达式或脚本let)的依赖,并且提高页面的可读性...
用于对集合进行排序。 ```jsp <s:iterator value="list"> <s:property value="%{#status.index}"/>: #{item} ``` ##### 41. `<s:submit>` - 提交按钮标签 用于创建一个提交按钮。 ```jsp 提交"/> ``` ##### ...
OGNL表达式的格式通常包括对对象、属性和方法的引用。例如,可以使用OGNL表达式来访问当前会话中的用户对象并获取其用户名属性。 #applicationContext, #session, #request等符号是OGNL在Struts2中的内置对象,分别...
sort标签:多指定的集合元素进行排序。 数据标签: action:直接调用一个Action,根据executeResult参数,可以将Action的处理结果包含到页面中。 bean:创建一个JavaBean实例。。 date:格式化输出一个日期属性。 ...
Struts框架是Java Web开发中的一个经典MVC(Model-View-Controller)框架,它极大地...在实际项目中,可能还需要考虑分页、排序、条件过滤等情况,但基本原理是相同的,即利用Struts提供的标签库进行数据绑定和遍历。