gpt4 book ai didi

java web应用布局,请解释一些设计原则/模式

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:19:57 24 4
gpt4 key购买 nike

我正在查看这个使用 hibernate、jsp 和 spring 框架的 java web 应用程序。 (据我所知!)

文件布局是这样的:

classes/com/example/project1

在项目 1 中

/dao
_entity_Dao.java
/dao/hibernate/
_entity_DaoHibernate.java
/factory
DaoFactory.java
DaoFactoryImpl.java
/managers
_entity_Manager.java
/managers/impl
_entity_ManagerImpl.java
/model
_entity_.java
/service
_xxxx_Service.java
/service/impl/
_xxxx_ServiceImpl.java

你们有没有在什么地方读到过这种布局?它被认为是最佳实践吗?

工厂、经理和服务之间有什么区别? (高水平)

最佳答案

对于使用 Spring 构建的应用程序的典型布局,我会查看随附的示例 Web 应用程序(即 Spring)。

使用像 DaoFactory 这样的东西绝对不是最佳实践,应该注入(inject) Daos。一般来说,除了一些不寻常的情况外,你不应该需要带有 Spring 的工厂。注入(inject)是在 web 应用程序启动时完成的,spring 读取配置信息并构造所有对象并根据配置 xml 和/或注释将它们插入(这是假设对象的单例范围,这通常用于无状态的东西,比如daos 和服务,原型(prototype)范围内的事物会根据应用程序的要求创建新副本)。

在 Spring 应用程序中,服务类似于无状态 session Bean,它是包含用例的应用程序逻辑的事务层。因此,如果您的用户采取的操作会导致多个不同的表得到更新,您可以将 daos 注入(inject)该服务,让该服务上的方法对 daos 进行更新,然后配置 Spring 将该服务包装在一个使该方法具有事务性的代理。

我看到经理被用作我所说的服务的另一个名称。我不知道他们用它做什么。

关于java web应用布局,请解释一些设计原则/模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1970836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com