【问题标题】:off-the-shelf web application working directory现成的 Web 应用程序工作目录
【发布时间】:2013-06-29 13:54:46
【问题描述】:

我刚刚开始使用 Spring/java web。我想知道如何完成以下场景:

假设我正在创建一个支持文件上传的应用程序,它使用数据库连接,也许还有一个 Web 服务。这是一个现成的系统,因此所有设置都是客户特定的,应该由客户的 IT 人员在部署时进行配置。

在 web.xml 文件中更通用我想指出包含上传文件、许可证密钥文件、配置文件、其他客户特定资源甚至可能是 spring 上下文片段的应用程序工作目录。

<context-param>
    <param-name>workdir</param-name>
    <param-value>/var/r2/</param-value>
</context-param>

在我的应用程序中,我想使用 workdir 值来包含配置文件...

<import resource="wordir_param_value/settings.properties" />

上下文配置片段

<import resource="wordir_param_value/security.xml"/>

我以后如何在 java 代码中使用这些值?在这种情况下(现成的应用程序配置),什么是“最好的”方法?

最好的问候, 阿列克

【问题讨论】:

    标签: java spring deployment web.xml


    【解决方案1】:

    您可以为此使用 Spring 的属性支持。这允许使用两种不同的方法:

    • 在应用程序外部(固定位置)有一个属性文件,管理员可以编辑它,然后应用程序加载它
    • 在 Tomcat 中,您可以在应用程序特定的 context.XML 文件中编写属性

    在代码中使用@value注解将属性注入到变量中。

    在 Spring XML 文件中,您将其与 ${name} 一起使用 当然需要配置proprtyPlaceholderConfigurer

    【讨论】:

    • 但是如何在spring上下文xml文件中使用这个属性:&lt;import resource="&lt;workdir_param_value&gt;/security.xml"/&gt;可以显示一行代码吗?
    猜你喜欢
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 2018-12-11
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多