Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我的项目中src/main/resources下的资源。我将其与属性文件结合使用,以在基于Spring的项目中引入自定义属性_Java_Spring_Configuration_Web Applications - Fatal编程技术网

Java 我的项目中src/main/resources下的资源。我将其与属性文件结合使用,以在基于Spring的项目中引入自定义属性

Java 我的项目中src/main/resources下的资源。我将其与属性文件结合使用,以在基于Spring的项目中引入自定义属性,java,spring,configuration,web-applications,Java,Spring,Configuration,Web Applications,对于默认版本,我在主目录中有一个属性文件,Maven随后将其用作覆盖(这样就可以正确地找到本地Tomcat安装之类的内容)。测试服务器和生产服务器是我的其他配置文件。为我的生产服务器构建应用程序只需要一个简单的-p生产。别忘了调查PropertyPlaceHolderConfigure-这在JNDI不可用的环境中特别有用。我最近还使用Maven为实时或临时环境提供了其他配置。希望能有所帮助。使用不同的属性文件,并使用ant replace筛选器,该筛选器将根据完成构建的环境进行替换。 看是有道理

对于默认版本,我在主目录中有一个属性文件,Maven随后将其用作覆盖(这样就可以正确地找到本地Tomcat安装之类的内容)。测试服务器和生产服务器是我的其他配置文件。为我的生产服务器构建应用程序只需要一个简单的
-p生产

别忘了调查PropertyPlaceHolderConfigure-这在JNDI不可用的环境中特别有用。

我最近还使用Maven为实时或临时环境提供了其他配置。希望能有所帮助。

使用不同的属性文件,并使用ant replace筛选器,该筛选器将根据完成构建的环境进行替换。

是有道理的,而且这与我正在做的事情非常相似。一个ant任务用于阶段,一个用于生产,只需将默认值用于本地开发。但是,维护3个内容几乎相同的不同ApplicationContext会带来痛苦。大多数(全部?)Spring ApplicationContext子类为XML配置文件提供了一个位置数组,因此可以使用一个文件来表示常量信息,使用单独的文件来表示变量信息,并向每个上下文的构造函数传递多个。这有帮助吗?我喜欢“模板”方法,但当您不使用ant/maven,只是从IDE运行默认应用程序时,这种方法就失效了,或者?我支持模板的建议,如果您有一个用于多个不同生产部署的应用程序,这也很有用。我使用ant、velocity和VPP构建了一个模板系统。我相信通过maven的资源筛选可以实现这种模板方法。使用Spring占位符而不是模板,在部署期间将特定于主机的配置文件重命名为包含的文件名,怎么样?创建模板有什么意义?如果您将变量放入模板中,并在构建过程中用具体的值替换这些变量,那么为什么不将这些变量放入配置文件中,并将模板中的定义放入spring配置中呢?很有趣。但您可能不希望在登台环境中运行侦听器或服务,但它们仍然会使用这种方法运行,对吗?如果我理解正确:您为每个环境构建不同的WAR?这不是一种反模式吗?