Struts2 “#”符号:获取集合中的数据并进行选择操作
选择是对集合中行的操作。所谓选择,就是通过一定的条件获取集合中满足这一条件的数据,所获取的行就是对集合中数据的选择操作。在操作时需要应用“#”将集合中的数据取出进行选择操作。
创建 OgnlAction 文件,在文件中定义变量,并通过 add() 方法对变量进行赋值,关键代码如下:
创建 JSP 文件,使用“#”对集合进行选择过滤,关键代码如下:
语法:
list.{?#conditional expression>value}
如在一个集合中包含多个学生对象,获取这个集合中学生年龄大于 10 的所有学生,就是选择操作。
示例
本示例应用“#”过滤集合,选出价格超过 50 美元的图书并显示。创建 OgnlAction 文件,在文件中定义变量,并通过 add() 方法对变量进行赋值,关键代码如下:
public class OgnlAction extends ActionSupport{ //定义List类型books变量 private List<Book>books; public List<Book>getBooks(){ return books; } public String execute(){ //初始化books对象 books = new LinkedList<Book>(); //应用add()方法为List类型books变量赋值 books.add(new Book("978-0735619678","编程宝典",50.99)); books.add(new Book("978-0596007867","典型模块大全",35.96)); books.add(new Book("978-0201633610","开发实战宝典",50.19)); books.add(new Book("978-0596527341","范例大全",25.19)); books.add(new Book("978-0735605350","技术开发大全",50.19)); return SUCCESS; } }
创建 JSP 文件,使用“#”对集合进行选择过滤,关键代码如下:
<body> <h3>用于过滤集合</h3> <p>书的价格超过50美元的是</p> <ul> <s:iterator value="books.{?#this.price>50}"> <li><s:property value="title"/>-$<s:property value="price"/></li> </s:iterator> </ul> <p>"范例大全"的价格是:<s:property value="books.{?#this.title=='范例大全'}.{price} [0]"/></p> </body>}
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算