2012-06-20 58 views
2

我有一个struts项目和我的客户给我完整的业务逻辑classes.He需要struts和休眠的ingrate。Dao层和业务逻辑与struts和休眠

哪个最好, 把业务逻辑放到我的Dao层,需要为业务逻辑添加一个附加服务层。

一些struts项目我发现动作类直接访问Dao。

请给我建议哪个更好的选择。帮助非常感谢。

感谢,

+0

业务逻辑应该进入服务层,或者struts控制器。不在DAO – Subin

+0

建议你添加一个业务逻辑层,DAO只是响应DB访问。 – user1335794

+0

创建一个服务层,并把你的业务逻辑there.let struts2动作谈话与服务层和服务层与DAO.may是你可以添加外观,使其更加细化 –

回答

2

我的建议是保持Dao清洁您的业务逻辑,但是所有数据库相关的逻辑和定制都应该像DAO层一样在所有休眠逻辑中写入,将结果转换为您的类等等。(正如您使用Hibernate一样)应该写在DAO中。

整个迭代,设置/获取,结果定制,准备,请求改进作为hibernate查询的参数应该写在服务层。

另一层Controller应该在服务层上工作,它将接收请求并调用相应的服务方法并提供生成的响应。

2

我会强烈建议你的业务逻辑写入到服务层,使您的DAO层只包含数据库的交互,并可以在任何时间点是可重复使用的。

此外,我会建议你添加一个表示层(所有实体与普通值),将通过UI层访问。

0

让Hibernate成为您的DAO层,并在包含业务规则的层上编写服务层。这两者一起构成了MVC的模型部分。 Struts动作是MVC的控制器部分。