关于组合查询的实现

简介: 示范中心有一项功能是组合查询,就是在现有数据(例如教师、实验室、实验项目)中过滤出感兴趣的数据。因为数据的类型比较多,大约有十个,为每种类型都做一套查询界面和对应的Action代码很不划算。 我打算通过配置文件的方式,为每个类型的数据都需要对哪些属性进行过滤进行说明,并且说明每个属性在界面上表现为文本框、下拉框或是日期选择框,从而生成不同的查询界面,比如下面的格式定义了教师的查询属性集合,等等。

示范中心有一项功能是组合查询,就是在现有数据(例如教师、实验室、实验项目)中过滤出感兴趣的数据。因为数据的类型比较多,大约有十个,为每种类型都做一套查询界面和对应的Action代码很不划算。

我打算通过配置文件的方式,为每个类型的数据都需要对哪些属性进行过滤进行说明,并且说明每个属性在界面上表现为文本框、下拉框或是日期选择框,从而生成不同的查询界面,比如下面的格式定义了教师的查询属性集合,等等。

< root >
< queryConfig >
    
< class > edu.pku.cc.democenter.model.business.Teacher </ class >
        
< name > 教师 </ name >
        
< property >
            
< name > 姓名 </ name >
            
< field > name </ field >
            
< control > text </ control >
        
</ property >
        
< property >
            
< name > 性别 </ name >
            
< field > gender </ field >
            
< control > select </ control >
            
< type > edu.pku.cc.democenter.model.system.Gender </ type >
        
</ property >
</ queryConfig >
< queryConfig >
    
</ queryConfig >
</ root >

不过有一些细节问题还需要讨论,比如下拉框的内容如何填充,不同下拉框之间可能还会有关联,比如选择了示范中心下拉框以后,实验室下拉框中就应该只出现该示范中心的实验室作为候选项。验证方式可能也是一个潜在的问题。

一个个解决吧。

本文转自博客园八进制的博客,原文链接:关于组合查询的实现,如需转载请自行联系原博主。

相关文章
|
7月前
|
关系型数据库 MySQL 数据库
MySQL查询聚合函数与分组查询
MySQL查询聚合函数与分组查询
|
7月前
|
关系型数据库
单表查询、多表查询相关练习
单表查询、多表查询相关练习
53 9
|
7月前
|
SQL Java 数据库连接
MyBatisPlus-聚合查询、分组查询及等值查询
MyBatisPlus-聚合查询、分组查询及等值查询
1109 0
|
7月前
|
SQL 数据库
联合查询(多表查询)
联合查询(多表查询)
59 0
|
7月前
|
SQL
深入了解关联查询和子查询
深入了解关联查询和子查询
73 0
|
JavaScript
简单的模糊查询
简单的模糊查询
68 0
|
关系型数据库 MySQL
MySQL查询之 联合主键
MySQL查询之 联合主键
235 0
基础DQL(数据查询)——聚合函数&分组查询
基础DQL(数据查询)——聚合函数&分组查询
135 0
基础DQL(数据查询)——聚合函数&分组查询
|
SQL 数据处理 开发者
DQL 之条件查询、模糊查询及排序|学习笔记
快速学习 DQL 之条件查询、模糊查询及排序
114 0
DQL 之条件查询、模糊查询及排序|学习笔记
|
自然语言处理 搜索推荐 开发者
高级查询(数组查询和组合查询)| 学习笔记
快速学习高级查询(数组查询和组合查询)。
高级查询(数组查询和组合查询)| 学习笔记