Struts2中的OGNL中的集合操作实例

直接创建List类型集合的语法 
{e1,e2,e3…} 
直接创建Map类型集合的语法 
#{key1:value1,key2:value2…}  
取得子集的三个操作符 ? ^  $ 

 

实例:

 

package cn.hjc.action;
import java.util.ArrayList;
import java.util.List;
import cn.hjc.model.Book;
import com.opensymphony.xwork2.ActionSupport;
public class OgnlAction extends ActionSupport{
	private List<Book> books;
	public List<Book> getBooks() {
		return books;
	}
	public void setBooks(List<Book> books) {
		this.books = books;
	}
	@Override	
	public String execute() throws Exception {
		Book book=new Book();
		book.setId(1);
		book.setName("spring");
		book.setJiaqian(34);
		
		Book book1=new Book();
		book1.setId(2);
		book1.setName("hibernate");
		book1.setJiaqian(55);
		
		Book book2=new Book();
		book2.setId(3);
		book2.setName("struts2");
		book2.setJiaqian(60);
		
		List<Book> list=new ArrayList<Book>();
		list.add(book);
		list.add(book1);
		list.add(book2);
		
		setBooks(list);
		return SUCCESS;
	}
}
 

 

package cn.hjc.model;
public class Book {
	private int id;
	private String name;
	private int jiaqian;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getJiaqian() {
		return jiaqian;
	}
	public void setJiaqian(int jiaqian) {
		this.jiaqian = jiaqian;
	}
	
}
 
<?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>
	<constant name="struts.devMode" value="true" />
	<package name="default" namespace="/" extends="struts-default">		
		<action name="book" class="cn.hjc.action.OgnlAction" >
			<result name="success">/msg.jsp</result>
		</action>		
	</package>
</struts>
 
  <body>集合取值规则 books.{? #this.jiaqian>44}<br>
  <s:iterator value="books.{? #this.jiaqian>44}">
  	<s:property value="id"/>---<s:property value="name"/>---<s:property value="jiaqian"/><br>
  </s:iterator>
   <br>
     集合取值规则 books.{$ #this.jiaqian>44}<br>
  <s:iterator value="books.{$ #this.jiaqian>44}">
  	<s:property value="id"/>---<s:property value="name"/>---<s:property value="jiaqian"/><br>
  </s:iterator>
  <br>
    集合取值规则 books.{^ #this.jiaqian>44}<br>
  <s:iterator value="books.{^ #this.jiaqian>44}">
  	<s:property value="id"/>---<s:property value="name"/>---<s:property value="jiaqian"/><br>
  </s:iterator>
   
  </body>

 ssh2.org  SSH2整合论坛希望大家支持,

这个例子的源代码下载网址http://ssh2.org/read-htm-tid-512-ds-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值