Bean QueryJava工具库

联合创作 · 2023-10-01 08:08

Bean Query 复用Apache Commons BeanUtils, Apache Commons CollectionsJava Hamcrest
来简化对Bean(集合)的排序,过滤和转换。


文档



快速入门


BeanQuery的使用非常简单也很直接,例子代码如下:




//静态导入BeanQuery
import static cn.jimmyshi.beanquery.BeanQuery.*;


//使用 select、from、where、orderBy、desc和asc来组装一个Query,然后执行execute方法来获得结果。
List<Map<String, Object>> result = select("price,name,mainAuthor.name as mainAuthorName")
.from(bookCollection)
.where(
//选择name属性值是"Book2"或者以“Book1”开头
anyOf(
value("name", startsWith("Book1")),
value("name", is("Book2"))
),
//并且prince的值位于区间(53,65)
allOf(
value("price", greaterThan(53d)),
value("price",lessThan(65d))
)
)
.orderBy("name").desc()//根据"name"属性按照倒序对结果进行排列
.execute();

执行完以上代码后,result列表中的每个Map都是java.util.LinkedHashMap实例,每个Map的都由下面的这三个Entry组成:



  • key=price, value=book.getPrice()

  • key=name, value=book.getName()

  • key=mainAuthorName, value=book.getMainAuthor().getName()






浏览 28
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报