当前位置:数据库 > SQLServer >>

Vaadin Web应用开发教程(47): SQLContainer-过滤及排序

SQLContainer 的过滤及排序在设计时总是通过数据库操作来完成,也就是说在使用Filter 和Sorting 时应用与数据库之间会发生通信。实际上Filter 对应到SQL语句的WHERE语句,Sorting 则对应到ORDER BY语句。

除了Container支持的Filter之外(可以参见Vaadin Web应用开发教程(44): 使用Container接口管理一组Item),SQLContainer 也支持Like 和 Between 过滤器。 它们也对应到WHERE语句。

比如我们要查询名字叫“John” 住在”New York” 的客户。


[java] 
container.addContainerFilter( 
                   new And (new Equal("FIRSTNAME", "John"), 
                           new Equal("CITY","New York"))); 

container.addContainerFilter(
       new And (new Equal("FIRSTNAME", "John"),
         new Equal("CITY","New York")));

这实际上是执行:

 

[sql
select * from customer 
where FirstName='John' and city='New York' 

select * from customer
where FirstName='John' and city='New York'

 

 \

排序可以使用Vaadin提供的Sort 方法,其参数定义如下:

[java] 
public void sort(Object[] propertyId, boolean[] ascending) 

public void sort(Object[] propertyId, boolean[] ascending)


此外还可以使用 addOrderBy 方法。

比如按客户的FirstName 排序

[java] 
container.addOrderBy(new OrderBy("FIRSTNAME",true)); 

container.addOrderBy(new OrderBy("FIRSTNAME",true));

\
 

补充:Web开发 , 其他 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,