我有一个使用 Struts 2 和 Freemarker 模板以及 Spring 4 的 Web 应用程序。
我有一些配置字符串存储在.properties
我需要在每个页面上呈现的文件(例如,我们的 CDN 路径,其中包含版本字符串)。现在这些属性由 Spring 读取并存储在一个实例中org.springframework.core.env.Environment
.
有没有一种简单的方法可以让我的Environment
我的所有视图都可以访问实例吗?
我们有另一个应用程序,它通过操作继承来完成此操作,其中基类有一个getEnvironment()
方法。我不喜欢这种方法,因为每个操作都必须扩展基类。
将您的逻辑放入一个 bean(例如 Configuration.java)中,然后将其注入(通过 Spring DI、Java EE CDI 或其他方式)到所有需要它的操作中,并通过 Getter 公开。
但我不会低估继承方法here,它并不像您描述的那么糟糕,因为您可以在遍历继承树时添加规范来构建继承树:一个 BaseAction、一些 Sub-BaseActions、一些子子...等等。阅读更多 https://stackoverflow.com/a/13530194/1654265.
如果您后来发现同级 BaseAction 需要您放在 BaseAction 上的内容,只需将其向上移动一级(在父 BaseAction 中,直到第一个 BaseAction,每个人都通用)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)