[发明专利]一种简化JAVA程序下查询数据表指定字段数据、多表联合查询、统计查询的方法在审
申请号: | 201511019543.9 | 申请日: | 2015-12-29 |
公开(公告)号: | CN105653277A | 公开(公告)日: | 2016-06-08 |
发明(设计)人: | 仲灵烨 | 申请(专利权)人: | 上海建坤信息技术有限责任公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 上海伯瑞杰知识产权代理有限公司 31227 | 代理人: | 孟旭彤 |
地址: | 200032 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 简化 java 程序 查询 数据表 指定 字段 数据 联合 统计 方法 | ||
技术领域
本发明属于计算机编程技术领域,特别涉及一种简化JAVA程序下查询数 据表指定字段数据、多表联合查询、统计查询的方法。
背景技术
在现有的JAVA程序下,通常会有以下几种“老方法”可以做到只查询部分 字段数据,但都需要编写额外大量冗余的代码,其中:
1.为各种查询字段可能编写多种对应实体类的构造方法。
例:只要查询UserInfo表中"name"字段
publicUserInfo(Stringname){this.name=name;}
或者要查询表中"name"“age”“address”
然后在编写查询时,实际编写使用某个需要的构造方法
Stringhql="selectnewUserInfo(name)fromUserInfo";
......
这种方式的缺点是对于不同查询需求要先创建相应的构造方法,不能纯粹 的专注于业务逻辑的开发。
2.为每一种可能的查询字段创建映射实体类,查询时调用对应实体类。其本质 和方法1一致,只不过用新的一个类来代替构造方法。缺点依然是开发时要针 对业务需求创建出对应的实体类,然后会有处理调用这些类的逻辑开发,对不 同类型的结果数据处理的逻辑,无法专注真正的业务逻辑开发。
3.用纯SQL语句来查询。可以做到相对专注在业务逻辑的开发,但是需要开发 人员懂得SQL语法,并正确编写。开发的代码主要部分是以字符串形式的SQL 语句,会发生字符串中拼写错误,字符串和参数之间的组合错误;错误排查、 后期修改维护困难;代码核心不是面相对象,与实际使用的数据库类型耦合紧 密
4.利用第三方框架提供的方法,可以做到专注于业务逻辑开发,不用会编写SQL 语句,代码完全符合面相对象的思想。缺点是需要了解框架的机制,知道并掌 握使用其提供的方法;同样需要编写较多,步骤繁多及一定量的冗余代码。以 使用“Hibernate”为例,最简单的实现如下:
//1.创建出带查询的表实体类的查询对象DetachedCriteria
//2.创建查询字段定义的对象集合ProjectionList
//3.创建要查询的每个字段对象Projections并将其一一放进ProjectionList中
//4.将ProjectionList对象值赋予给DetachedCriteria查询对象
//5.定义将返回的结果数据放进某个数据载体类型中
//6.执行以DetachedCriteria为参数的查询方法,获取结果
发明内容
本发明的目的是提供一种JAVA程序下查询数据表指定字段数据、多表联 合查询、统计查询的方法,以简化现有的代码编写。
本发明的技术方案是,一种简化JAVA程序下查询数据表指定字段数据的 方法,包括步骤:
创建与表字段一一对应的数据实体类;
用字符串数组来描述要查询的字段名称;
创建出对应的sql查询语句,发起查询并获得结果;
利用反射将结果数据映射到对应的数据实体对象的各属性中;
操作数据时则直接用对象中“get”方法来读出某一个值。
一种简化JAVA程序下多表联合查询的方法,包括步骤:
采用上述查询数据表指定字段数据的方法极联多张关联表的查询;
定义联合查询时字符串数组中用关联的“类型对象名称.该类型中的某一个属性 名”的形式;
默认多表之间采用“innerjoin”方式关联,具体使用时指定“right/leftjoin”。
一种简化JAVA程序下统计查询的方法,采用上述查询数据表指定字段数据 的方法和多表联合查询的方法,且采取以下步骤:
创建具体要使用的统计对象,包括统计的的字段名和统计的模式(利用枚举类 型定义几个统计模式“max,min,sum,avg,count”);
用字符串数组来描述“groupby”的字段名。
本发明的有益效果包括:
·不用编写SQL语句;
·不用事先创建多个实体类和定义多个构造方法;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海建坤信息技术有限责任公司,未经上海建坤信息技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511019543.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:名称导向式的应用系统升级系统及方法
- 下一篇:一种界面显示方法及终端