请教一个关于dao的问题

目前做一个订餐的项目,里面有订单表 订单详情表 餐型表 地址表 供应商表等等,以上表之间的关系是相互关联的,订餐流水页面要展示这些表里面的数据,请问如何封装实体类?

看了下老的代码,基本上就是订餐表关联详情表,在实体类里面定义详情表的对象,sql用连接查询 ,xml如下

<Association>
<id property="xxx" >
<result> 需要展示的字段......</result>
</Association>

返回给前端的对象就是
{bookMeal:{
a...
b...
,
bookMealDetail:{
需要的字段:...
}
}}

前端就bookMeal.bookMealDetail.a.b.c.....这样取字段

请问这个方法是不是太臃肿了 而且也只是要关联表里面的某一个字段就要用Association 或者Collection 封装对象

可以看到sql代码里面写了大量的这样的标签

sql语句一连七八上十个连接查询不堪重负

请问有什么可以优化的方案?

我能直接创建一个bookDealVo来封装要展示的字段吗?

阅读 1.7k
2 个回答

先回答一个问题:我能直接创建一个bookDealVo来封装要展示的字段吗?
没问题哈!看你需要。

再来第二个:只是要关联表的某一个字段!!!
这个为什么不考虑 表字段冗余

再来第三个:说实话没有 sql,对你的业务,从描述中,我不是很清楚,也没办法判断。不过有个建议。
在写 join 的时候, 最好把 条件过滤 写在 on 后面,不要全部放在 where 写。 这样效率更高

好吧 可能描述的不太清楚 没人回复

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题