2015-12-03 108 views
2

我开始使用Spring并对其约定有一些混淆。Spring服务和存储库层约定

  1. 将存储库置于控制器中可以吗?
  2. 在服务类中,如果我想重新使用代码,我可以注入其他Services其他Reposities
  3. 是它命名Service的最佳实践和Repository类是基于Entity名称即:用户 - >UserRepository - >UserService

回答

1
  1. 不,请勿在控制器中使用存储库。只在服务中。 并且不要在控制器中使用实体。创建一个从实体DTO(数据传输 对象)对象,并在你的 前端这项工作

  2. 是的,你可以在你的服务类使用其它服务和respositories

  3. 是的。命名interfache UserService和实现UserServiceImpl

+0

1 _“不要用你的控制器中的实体“_你的意思是在我返回之前,我应该在'Service'中将'Entities'转换为Dto?或者在'Controller'中,我应该从'Service'中获得'Entities',然后在将数据传输到视图之前将它们转换为Dto?

+0

我的意思是你必须在你的服务中将实体转换为dto。 https://en.wikipedia.org/wiki/Data_transfer_object。你能否请我的答案被接受? –