有没有人做过自定义查询?

名位大吓,有没有人做过自定义查询?也就是允许自定义查询条件,查询结果,后台配置查询条件、查询结果后,前台页面会跟着变化。
大家有没有好的思路,指导指导,谢谢啦!


怎么没有人回复呢?这个问题应该很有挑战性。在实际项目中,应该也会经常碰到。
我的想法是:
1、用builder 模式生成配置信息 :
A、基本信息(id,查询名称、涉及的表名,排序字段、分组字段....)
B、条件控件集合(用command模式,调用getHtml()输出到页面
<bean:write name="" property="html"/>)
C、输出结果集合 (将每个输出结果封装,并放入集合。结合标签输出)

2、条件控件(command模式)
A、父类:id,name,defaultValue,getHtml()
B、各个控件子类(Text,Select,DateText......)

这是我的粗浅的想法,请各位大虾给点意见,并请帮忙解决以下问题:
1.数据库表怎么设计好,
2.页面上应如何设计,更容易操作
3.数据过滤,比如同样的查询,不同权限的人,看到的结果不同,怎么控制。
在此先说谢谢了!

我看到有的系统直接在页面传SQL语句,个人认为这条路不太好走,系统的可维护和拓展性比较差。

要么提供全文检索。

banq,谢谢你的答复!
1.可能“自定义查询”这个描述不够清楚,用“可定制查询”来描述,可能会清楚一点,我要实现的主要是:所有的查询都可能通过配置来生成。
,这样查询就可以公用一个页面。

2.banq,我现在的问题主要有以下几个:
A、数据库怎么设计比较合理,可扩展性好,
B、后台配置页面,怎么设计操作简单,对于不懂数据库表结构的管理员,也可以配置。

恳请 banq 能在百忙中,给个比较详细的答复!谢谢!

>所有的查询都可能通过配置来生成。,这样查询就可以公用一个页面。
这句话不是很明白,也就是业务需求没搞清楚,下面方案就无法帮你出点子了。

现在查询两种方向:
1.针对字段 可以是字段联合或字段逻辑组合
2.非针对字段,全文查询。

你说的应该是针对字段,字段查询有很多形式,你如何知道用户是需要哪个查询组合形式?

用 www.elinksoft.com 的 BSP 平台吧。
现在是 2.4版本,3.0版本功能会更强大。
[该贴被admin于2008-09-23 10:00修改过]

>所有的查询都可能通过配置来生成。,这样查询就可以公用一个页面。
这个的意思就是:
比如项目中有申报情况查询、申报表查询、划缴情况查询等查询
现在有以下情况:
1.以上几种查询页面,经常会发生变化,比如要多增几个查询字段
2.希望能做一个通用页面,简化开发

所以,就想做成自定义查询 ,提供 一个后台页面给用户去配置各种查询,配置完后,前台页面跟着变化 。

>你如何知道用户是需要哪个查询组合形式?
不用知道,由用户去配置。

现在问题就是:
如何设计数据库。如何设计后台配置页面,