- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SSH动态查询封装.doc
SSH动态查询封装接口介绍
1.查询记录总条数
public int count(Class c,Object[][] eq,Object[][] like,String[] group,String[] asc,String[] desc);
分页动态查询记录
public List? search(Class c,Object[][] eq,Object[][] like,String[] group,String[] asc,String[] desc,int start, int limit);
首先介绍两个查询接口的公有参数:
Class c : bean.class,即映射到你查询的表结构的实体类
Object[][] eq : 精确查询的参数name和value集合
{{name,”小明”},{code,”TB321”},...}
Object[][] like :模糊查询的参数name和value集合
{{startTime,”2013-10”},{name,”小”},...}
String[] group :要分组的参数name列表
String[] asc :对查询结果升序排列所需的参数name集合
String[] desc :对查询结果降序排列所需的参数name集合
这里提到的name非数据库字段名,而是bean的属性名,当然如果存在表关联,
以用户和职位为例,User 和 Dept关联,存在Dept dept;
则如果要查询职位名为xxx的所有User,name可填写为 ,eq某一集合可填写为{””,”xxx”}
分页动态查询记录独有的接口参数:
int start :从第几条记录开始查询
int limit :本页查询的最大记录数
参数列表除Class c不可为空外,其余参数皆可为空。对集合参数中的不法数据(子集合填写不完整、参数为null or “”实现自动过滤)
根据你的不同需求使用接口相应参数,以合同表为例:
精确查询:根据合同编号、合同名称、客户代表等精确信息实现查询
模糊查询:根据合同签订、生效、失效、制表年、月、日等模糊时间,部分合同名称等不精确参数实现查询
组合查询:根据页面需求在action获取相应参数(页面参数统一使用String接收,避免int出现默认为0的情况发生。在action使用Object对所获value进行统一类型设置),根据不同的参数进行单个、多个条件的组合查询。
意义:简化代码,所有类(表结构)的查询都可组合使用这两个接口。
便于维护,一旦查询需求有改动,只需更改页面参数和action接收参数即可
不足:未实现比较范围( = between and)的查找,以及对一些参数(数量总计、平均值)的特殊查找。此类查询非公有故弃之.
下一章介绍接口的具体实现(qiyue)
SSH动态查询具体实现之service
先贴代码:
public interface SnippetService {
public int count(Class c,Object[][] eq,Object[][] like,
String[] group,String[] asc,String[] desc);
Public List? search(Class c,Object[][] eq,Object[][]like,
String[] group,String[] asc,String[] desc,
int start, int limit);
}
service接口如上所示,具体参数详见上文。
下面介绍serviceImpl:SnippetServiceImpl
@Component(snippetServiceImpl)
public class SnippetServiceImpl implements SnippetService {
@Resource(name = snippetDao)
private SnippetDao sd ;
SnippetServiceImpl 是SnippetService 的具体实现,首先引入dao层的东东SnippetDao sd(关于dao的一些接口方法,本文只介绍其作用),
public int count(Class c,Object[][] ob,Object[][] like,String[] group,String[] asc,String[] desc){
StringBuffer hql = ne
您可能关注的文档
最近下载
- 电子对抗原理与技术(第3版)全套PPT课件.pptx
- 冷拼课件教学课件.pptx VIP
- 最新2025年秋开学第一课主题班会PPT课件(含抗战胜利80周年内容).ppt
- 22G101 三维彩色立体图集.docx VIP
- 2024年秋季新北师大版七年级上册数学全册教案设计.docx
- 吴清忠:人体复原工程.pdf VIP
- 川崎 Kawasaki 2022款 Z 400 中文用户手册 使用说明书2021年4月14日印刷.doc VIP
- [北京]冷轧带钢工程薄板酸轧设备基础施工方案.doc VIP
- 全国教学能力比赛《声临其境·影视配音要旨》教案(一等奖).pdf
- (高清版)DB36∕T 713-2013 高速公路红砂岩路基施工技术规范 .pdf VIP
文档评论(0)