处理变动的筛选条件
开发业务系统时,常常会遇到大量的筛选条件,筛选条件还会变动,增加或者减少;这就需要动态地拼接SQL语句,MyBatis配置文件的<isNotEmpty/>标签能很好处理这个情况,而使用Hibernate就使用Criteria处理这个问题,不使用Criteria(eqOrIsNull() 方法等),手动拼接SQL/HQL麻烦,工作量大,因为手动拼接参数化的SQL/HQL,还要往里面填充参数值,费心费时;
实现的大体想法(对于JSP,即ModelAndView,非JS):
非唯一性的筛选:把全部筛选条件(包括page_number,page_size)都放在一个 Controller 处理方法里面,然后Dao层的对应的方法就使用Criteria进行查询;
对于唯一性筛选:直接 select...where xx = xx 即可;
以上。
浙公网安备 33010602011771号