我的应用程序结构如下:
我创建了一个从XML文件中读取应用程序配置的类。问题是应该放在哪里?
通过反射,我已将它放在实用程序中,但实用程序类具有静态方法并且是无状态的,而此类使用Apache Commons XMLConfiguration的实例。我应该只调整方法,以便此实例仅限于此类中方法的范围吗?
答案 0 :(得分:3)
我认为这些项目是包裹,因此我选择主要包裹。
为什么?应用程序的配置,无论是否为XML,以及它是否基于Spring等应用程序框架,都是其主要功能的一部分。启动应用程序是应用程序的主要职责。所有业务功能,它提供的所有闪亮功能都在域和服务层中实现。
你是对的,utils是关于静态或类似的工具。由于应用程序的配置非常重要,我不会将其声明为实用程序。实用程序可以很容易地被另一个相同类型的实用程序替换(例如StringUtil
与StringUtils
与IOUtils
等等。它们都具有非常相似的功能)
答案 1 :(得分:2)
这取决于您使用的构建系统和应用程序类型。 maven建议将配置文件放在src/main/resources
中在WAR文件中,您可以将它们放在WEB-INF或WEB-INF / config
中根据你的项目结构,我建议引入一个文件夹配置或资源,因为几乎每个人都会期待它们。
答案 2 :(得分:2)
如果您正在使用Spring,请查看Configuration Placeholders。您可以为配置属性使用简单的java属性文件,并将其放在类路径(或任何其他位置)上。你可以创建自己的实现来使用不同的形式来保存你的配置值(XML,数据库等)。
答案 3 :(得分:2)
由于配置是一个横切方面,因此它不会专门映射到其中一个层。将配置文件(XML或属性)放入类路径中,并通过Spring使用它来配置bean。
对于基于属性的配置数据,PropertyPlaceholderConfigurer是一个很好的解决方案。
答案 4 :(得分:1)
我劝你看一下Spring。一开始你可能看起来有点矫枉过正,但你会爱上它。