这一节主要想要说明一下框架中的查询条件接口
1. 条件查询的整个类结构图
2. 在hqhop-framework-common项目下面查询条件的的目录结构:
3. 打开SearchOperator.java , 该类包含了所有的查询操作符,是一个枚举类型:
public enum SearchOperator { eq("等于", "="), ne("不等于", "!="), gt("大于", ">"), gte("大于等于", ">="), lt("小于", "<"), lte("小于等于", "<="), prefixLike("前缀模糊匹配", "like"), prefixNotLike("前缀模糊不匹配", "not like"), suffixLike("后缀模糊匹配", "like"), suffixNotLike("后缀模糊不匹配", "not like"), like("模糊匹配", "like"), notLike("不匹配", "not like"), isNull("空", "is null"), isNotNull("非空", "is not null"), in("包含", "in"), notIn("不包含", "not in"), custom("自定义默认的", null); private final String info; private final String symbol; SearchOperator(final String info, String symbol) { this.info = info; this.symbol = symbol; } public String getInfo() { return info; } public String getSymbol() { return symbol; } public static String toStringAllOperator() { return Arrays.toString(SearchOperator.values()); } /** * 操作符是否允许为空 * * @param operator * @return */ public static boolean isAllowBlankValue(final SearchOperator operator) { return operator == SearchOperator.isNotNull || operator == SearchOperator.isNull; } public static SearchOperator valueBySymbol(String symbol) throws SearchException { symbol = formatSymbol(symbol); for (SearchOperator operator : values()) { if (operator.getSymbol().equals(symbol)) { return operator; } } throw new SearchException("SearchOperator not method search operator symbol : " + symbol); } private static String formatSymbol(String symbol) { if (Utils.isEmpty(symbol)) { return symbol; } return symbol.trim().toLowerCase().replace(" ", " "); } }
4.Searchable抽象类的主要实现都是在SearchRequest中完成的,可以代码较多可以直接查询
5. 查询接口的使用方式:
1) 只有单个单个条件(查询用户age=21的记录)
Searchable searchable = Searchable.newSearchable(); searchable.addSearchFilter("age", SearchOperator.eq, 21);
2) 两个查询条件,用and连接(查询用户name='silentwu' and age=21的记录
Searchable searchable = Searchable.newSearchable(); searchable.and(SearchFilterHelper.newCondition("age", SearchOperator.eq, 21), SearchFilterHelper.newCondition("name", SearchOperator.eq, "silentwu"));
3. 两个查询条件,用or连接
Searchable searchable = Searchable.newSearchable(); searchable.or(SearchFilterHelper.newCondition("age", SearchOperator.eq, 21), SearchFilterHelper.newCondition("name", SearchOperator.eq, "silentwu"));
相关推荐
J2EE框架技术Struts-spring-hibernate-JSF全套详细课件.zip
MLDN_J2EE框架_笔记--精华---(包括jsp struts hibernate spring).rar
J2EE_Spring_Stucts_Hibernate架构-经典_435页.pdf 本课程给出J2EE 平台技术概念上的一格较为清晰而完整的思路,帮助学生掌握各技术 间的相互关系和重要的思想。通过一系列的实战训练,使学生掌握基于J2EE 平台的...
Java J2EE Hibernate Struts Spring Hibernate Together
轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发笔记
J2EE-jsf1.2-Spring-Hibernate整合基本资源包,我是用了很长的时间整合成功并在实际中使用,相当完美.用eclipse-jee-europa-3.3.2-winter-en-win32构建成功.
这是一个J2EE-Struts2-Spring-Hibernate整合的例子:添加,采用现比较流行的一些技术(struts+hibernate+spring)
J2EE-Struts2-Spring-Hibernate整合基本资源包,我是用了很长的时间整合成功并在实际中使用,相当完美.用eclipse-jee-europa-3.3.2-winter-en-win32构建成功.
J2EE-Struts-Hibernate
中文版EXPERT-ONE-ON-ONE-J2EE-DEVELOPMENT-WITHOUT-EJB.part2.rar
Struts2-Hibernate-Spring,javaee课程的小实验和综合实验,还有详细的报告
《轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发》图书配套源码part1
《轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发》源码.part6
轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发 part2
《轻量级J2EE 企业应用实战--Struts+Spring+Hibernate 整合开发》源代码
《轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发》电子书.part3.rar
J2EE企业级项目开发-1期 04 Hibernate使用经验.doc 学习资料 复习资料 教学资源
《轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发》源码.part3
《轻量级J2EE企业应用实战--Struts+Spring+Hibernate整合开发》图书配套源码part3。一共4部分,全部下载完毕解压既可。