浏览 3053 次
锁定老帖子 主题:关于项目使用SSH开发存在的问题总结
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (15)
|
|
---|---|
作者 | 正文 |
发表时间:2008-10-28
2.异常处理还有待验证,Action中充斥中大量的try{}catch{}。 3.程序日志通过Aop实现,需要验证。丧失了日志的真正意义。 以上是目前我发现项目的问题,希望大家多提建议,非常感谢。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-10-28
你是在action中实现业务逻辑?
|
|
返回顶楼 | |
发表时间:2008-10-28
和业务相关的hql不在Service层,难道放到DAO层?
|
|
返回顶楼 | |
发表时间:2008-10-28
MarkDong 写道 和业务相关的hql不在Service层,难道放到DAO层?
你一个业务逻辑有多少? 有一个BaseDAO的话,自然就有ExtendDAO,你不写那里面你写到Service干什么? 无非查询数据嘛,findByYearAndMonth(int year,int month) 难道你在Service去组装HQL? 很奇怪你说的跟业务相关的HQL是什么意思。 我觉得Service调用DAO的意义在于由Service去组装或处理繁琐的参数然后干干净净的传给DAO就行了。 |
|
返回顶楼 | |
发表时间:2008-10-28
非常感谢各位的回帖。
MarkDong 写道
和业务相关的hql不在Service层,难道放到DAO层?
组装hql语句这样的操作当然要在Dao层,这样才能够达到分层的效果,不依赖具体的ORM工具。service层只是为Dao层提供需要的数据而已。 |
|
返回顶楼 | |
发表时间:2008-10-28
关于 2.异常处理还有待验证,Action中充斥中大量的try{}catch{}。
我当时考虑过在Service层处理,让后返回标识到Action以判断操作是否成功。但是,考虑到通过Exception来处理程序运行的过程,我认为是非常自然的事。但是,Action中充斥着大量的try{}catch{}让人觉得反感。 |
|
返回顶楼 | |
发表时间:2008-10-28
xujian161 写道
非常感谢各位的回帖。
MarkDong 写道
和业务相关的hql不在Service层,难道放到DAO层?
组装hql语句这样的操作当然要在Dao层,这样才能够达到分层的效果,不依赖具体的ORM工具。service层只是为Dao层提供需要的数据而已。 感觉你说的挺矛盾的,既然要不依赖具体ORM工具,那你写HQL语句干什么呢?HQL好象是HIBERNATE专有的吧? 其次,所谓业务逻辑层如果不提供数据以组装成所需要HQL语句,而仅仅是直接调用DAO层的方法,那么SERVICE层有何业务逻辑可言? |
|
返回顶楼 | |
发表时间:2008-10-28
xujian161 写道 1.太过度依赖Dao层共通的baseDao;和业务相关的hql语句不应该写在Service类中。
2.异常处理还有待验证,Action中充斥中大量的try{}catch{}。 3.程序日志通过Aop实现,需要验证。丧失了日志的真正意义。 以上是目前我发现项目的问题,希望大家多提建议,非常感谢。 第一条没看出你有什么疑问的; 第二条,异常处理不用try-catch那怎么处理呢,问题在于进行我们自己的封装,并明确的上抛,以达清晰明了; 第三条,貌似是不合理,验证个人认为是不需加的 |
|
返回顶楼 | |