多条件查询就是着有多个条件联合查询,这就意味着可以选一个或多个条件进行查询。我用一副图能更好的说明什么是多条件查询。
如下图:
下面将是具体方法:(本文采用的是SSH框架)
在Action 的search方法中调用两个方法:
方法一:
作用:得到要查询的记录的个数。
具体参数:都是要查询的条件。做适当处理。转换成对应的实体类的属性。
方法二:
作用:得到要查询的记录。
具体参数:都是要查询的条件。做适当处理。转换成对应的实体类的属性。
这两个方法都是JinHuoService接口里面的方法,代码如下:
具体实现类代码:
下面有两个方法要解释:(getCount 方法和 find方法将在最后给出)
第一个,上段代码中的就是私有方法
它的功能就是创建查询中要用的HQL和HQL的参数。因为我们不能确定用户查询条件都是什么。所以在这个方法中判断。
这个方法的核心就是第二个需要解释的方法:
这也是一个接口中的方法(JhdDao接口)定义如下:
功能:它将返回一个HQL中条件(也就是 where )后面的部分HQL。
参数:List l 的定义是将用到的参数(也就是对应HQL中 ? 的参数)保存起来(在次强调一下,不是所以的参数都能用到,List保存的是用户查询时已设置的参数)
具体实现类的实现代码如下:
getCount 方法和 find方法