作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个具有 3 层的应用程序:GWT-RPC、Business 和 DAO在每一层我都有不同的 bean 。例如,对于用户,我有 UserRPC(用于 UI)、User(业务)和 UserDTO(用于持久化)。在每一层更改时,我都会重新转换对象。
主要问题是枚举。各层的枚举完全相同,但我需要复制它们以保持层的独立性。
有什么建议吗?
最佳答案
(简答)
如果它们确实相同,您需要创建一个 commons
项目/jar 。这里里面是整个应用程序共有的所有东西,比如实用类、枚举等。
(长答案)
考虑系统的整体架构,任何层中都不应该有重复的数据。如果发生这种情况,则意味着系统设计存在缺陷,紧耦合的情况可能即将出现。这就是为什么在开发软件工程师时经常(应该)在执行任何实现之前记录接口(interface)(契约(Contract)/API)的部分原因。一旦这些接口(interface)获得批准并且几乎没有重复的机会,就可以开始实际实现。这将捕获在应用程序的每个单独层创建 X 个枚举(它们是常量)的情况。另外,请记住,对于枚举,如果业务层中的某些内容发生变化而影响枚举,则必须重新编译代码并重新部署。您必须注意不要将枚举用作所有系统常量的包罗万象,因为这是您可能必须处理的完全不同的问题。
关于java - 在 Java 应用程序中跨层传递枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11469307/
我是一名优秀的程序员,十分优秀!