| 作者 |
内容 |
| linchangping |
如何设计多表间数据查询的数据层
我正在使用三层结构去编程实现项目。
我是这样做的,基本上每一个表对应一个实体类和集合类,这样可以完全实现单表的数据库操作,包括查询和更新。
但如果遇上多表查询,特别是统计时,这种情况很多。用实体类去实现,效率明显大大下降,并且觉得很烦,如果不做三层结构时,可以利用一个Sql语句就可以解决,但现在要写很多代码去实现,执行效率太低!!
那位高手,有此经验,请多多指教! |
| 03/01/17 10:14 |
酷帖! 臭帖! 回复 |
酷帖评价: 臭帖评价: |
| 返回页首 |
|
| weihello |
回复:
如何设计多表间数据查询的数据层
累啊, 你去看看JDO的标书吧。
重复性的,不必要的劳动,老问题。
|
| 03/01/17 10:18 |
酷帖! 臭帖! 回复 |
酷帖评价: 臭帖评价: |
| 返回页首 |
|
| tacone |
我目前的做法
我也遇到类似情况,由于担心应用服务器的效率,把跨表查询都做成存储过程防盗数据库服务器上了 |
| 03/01/17 13:12 |
酷帖! 臭帖! 回复 |
酷帖评价: 臭帖评价: |
| 返回页首 |
|
| javalover |
回复:
如何设计多表间数据查询的数据层
这是一个老问题了,不同的人有不同的解法.
1.需要查询的情况.
a.可以通过动态构建sql语句,并向后台提交,将结果返送到一个通用数据集控件,
即可,通用性强,客户端简单,易维护.
b.将实体映射为一个view.
效果同于a.,但相比于a它更有以下好处,可后台进行全局维护并升级,在数据量中等及少的情况下,比a.有更高的执行效果.
c.设计代码型的实体类,通过该类去进行数据的操作.
代码量大,难维护,方法最笨.
2.需要更新的情况.
a.采用设计代码型实体类,通过类去更新数据.
代码量大,难维护,设计思路最原始.
b.通过前台,动态构建更新sql语句.
设计相比复杂,通用性强,易维护,易管理,效率相比高.
3.对上是对于单表型实体的操作,对于复合型,即一个实体的属性在构建上是源于多个物理表,并伴有链接关系.
a.设计代码型实体类,即ADO型.思路简单,可行性高.
b.通过前台,动态构建sql.
设计复杂,少有实现者. |
| 03/01/17 13:43 |
酷帖! 臭帖! 回复 |
酷帖评价: 臭帖评价: |
| 返回页首 |
|
|