为什么我们使用服务层和DAO与JPA存储库。 在spring mvc项目中使用这种架构是否有任何标准? 我对此感到迷惑,而且我是春天mvc的新手。 请帮帮我。 在此先感谢。为什么我们使用服务层和DAO与JPA存储库
4
A
回答
1
我使用Spring MVC和在我的项目我有3层
- 控制器
- 服务
- DAO
控制器简单地控制进/出的project.In控制器我们不写任何业务逻辑
我们将所有业务逻辑写入服务层
在DAO,我们写出这样的CRUD操作
这是因为我们不希望混合所有的逻辑在一个类流所做的数据库逻辑。它会增加负担,难以调试
1
有两个理由使用服务层:
1.代码模块化:
使用服务层,我们可以将代码分成像ORM不同层和业务逻辑。有没有关系DB
2.安全
服务层,则是更难获得从客户端访问数据库,除非通过该服务。如果数据库不能直接从客户端访问(并且没有微不足道的DAO模块作为服务),那么接管客户端的所有攻击者都可以尝试破解服务层,对您的数据进行最严格的清理访问。
相关问题
- 1. 用于JPA的手动事务服务和DAO层与弹簧
- 2. DAO和服务层(JPA/Hibernate + Spring)
- 3. 服务层和存储库
- 4. Generic Dao和服务层
- 5. 了解服务和DAO层
- 6. Prodinner服务层存储库
- 7. 服务层重复我的存储库
- 8. Spring服务和存储库层约定
- 9. MVVM,存储库模式和服务层
- 10. 存储库模式和服务层
- 11. 服务层和存储库的责任
- 12. 集合,存储库和服务层
- 13. 服务和存储库层的责任
- 14. 使用Doctrine 2和存储库,服务层的目的是什么?
- 15. 什么是Spring框架中的DAO和服务层?
- 16. 为什么要使用服务层?
- 17. 为什么@ DAO上的服务?
- 18. 为什么我们使用堆来存储内存?
- 19. DTO,DAO或服务层?
- 20. 测试春天hibernate dao和服务层
- 21. DAO和服务层的设计模式
- 22. 服务与存储库
- 23. 服务层/存储库模式
- 24. 为什么我们需要通用服务定位器库?
- 25. 在Azure存储服务中使用Blob存储服务REST API和StorageClient类库创建Container有什么区别?
- 26. 春天JPA与applicationContext.xml中,DAO和服务是NULL
- 27. DAO和服务?
- 28. 管理服务层或存储库层中的事务?
- 29. 为什么我们需要使用存储过程?
- 30. 结合服务和存储层
我们通常使用服务层来抽象出DAO层。业务层不应该知道我们正在使用哪个ORM。它应该只与服务层交谈。它也有助于您切换DAO层。 – Amit
当我们使用JPA Repository(我相信你在谈论Spring Data JPA)时,它通常与域驱动设计有关,而在DDD中,人们通常认为Repository位于域层,并且没有所谓的DAO层在这样的设计中。存储库通常被认为是更抽象的概念,而DAO服务于更多的技术目的(ahh ...很难在这么短的一段中解释) –