代码之家  ›  专栏  ›  技术社区  ›  iftheshoefritz

SpringRoo在META-INF/Spring中放置database.properties有充分的理由吗?

  •  3
  • iftheshoefritz  · 技术社区  · 14 年前

    我试图理解为什么SpringRoo将database.properties放在META-INF/Spring中的原因,它将作为战争的一部分部署在那里。

    当然,数据库属性是特定于环境的,应该在不需要重建的情况下进行更改的战争之外?我将要更改application-context.xml中的行,以便在类路径上的任何位置搜索属性文件,并将文件移动到不与战争打包的位置。

    有什么事情我不能到这里来让我后悔吗?

    2 回复  |  直到 14 年前
        1
  •  5
  •   David Tinker    14 年前

    我使用Spring的PropertyPlaceholderConfigurater处理了这个问题,包括类路径上的属性文件和文件系统上的属性文件:

    <context:property-placeholder 
        location="classpath*:META-INF/spring/*.properties,file:myapp*.properties"/>
    

    如果应用程序启动(或运行测试等)时当前目录中有myapp*.properties文件,它将覆盖来自烘焙到war/ear/whatever中的文件的属性。你可以把星星拿出来,但那你就得把文件拿出来。

        2
  •  2
  •   Pascal Thivent    14 年前

    这可能会影响(中断)各种 database commands 喜欢

    • database properties set
    • database properties remove
    • database properties list

    依我看,你应该把它放在下面 META-INF/spring .