当前位置: 首页 > 面试题库 >

是否可以在context.xml中使用占位符

终祯
2023-03-14
问题内容

我正在使用Spring和struts,并且在“ /META-INF/context.xml”中具有以下条目

<Context cachingAllowed="false" useHttpOnly="true">
<Resource name="jdbc/xxx" auth="Container" type="javax.sql.DataSource"
           factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
           maxActive="100" maxIdle="30" maxWait="10000"
           username="xxxxx" password="xxxxx"
           driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
           url="jdbc:sqlserver://xxx:1433;databaseName=xxx;"/>
</Context>

是否可以通过以下方式实现,

<Context cachingAllowed="false" useHttpOnly="true">
   <Resource name="jdbc/xxx" auth="Container" type="javax.sql.DataSource"
               factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
               maxActive="100" maxIdle="30" maxWait="10000"
               username="${jdbc.username}" password="${jdbc.pwd}"
               driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
               url="${jdbc.url}"/>
 </Context>

我的applicationContext.xml具有以下内容,

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="java:comp/env/jdbc/xxx" />
</bean>

我想从属性文件中选取jdbc.username和jdbc.pwd的值。


问题答案:

使用Spring的PlaceholderPropertyConfigurer(仅替换Spring上下文中的值)是不可能的。

但是,可以在使用替换任务的构建过程中使用Ant。就像是:

<replace file="META-INF/context.xml" replacefilterfile="my.properties" />

请注意,以上内容以属性名称作为要替换的标记-例如,您需要在context.xml中使用“ jdbc.url”而不是“ $
{jdbc.url}”。如果绝对需要后者,则可以通过将要替换的标记明确命名为嵌套<replacefilter>元素来实现。



 类似资料:
  • 问题内容: 我知道linux确实做了嵌套的中断,其中一个中断可以“抢占”另一个中断,但是其他任务呢。 我只是想了解linux如何处理中断。它们可以被其他用户任务/内核任务抢占吗? 问题答案: 简单答案:中断只能被更高优先级的中断所中断。 因此, 如果 中断的优先级低于内核调度程序中断优先级或用户任务中断优先级,则中断可以被内核或用户任务中断。 注意,“用户任务”是指 用户定义的中断 。

  • 问题内容: 我试图通过用联接上的参数替换来避免任何SQL注入漏洞。 这会尝试执行带有问号的查询,而不是将其替换为参数。这样做的正确方法是什么? 编辑: 查询需要返回以下内容: 不是 结果截然不同! 问题答案: 一种选择是使用sanitize_sql_array方法。但是,它是一种受保护的方法,因此在您的类别模型上,您可以执行以下操作: 然后,您将这样称呼它: Ruby提供了一些其他方法(如果需要)

  • 我是飞航的新手。飞行路线很好,很友好。 我想在V1__Initial_structure.sql文件中为我的表创建并给出架构名称。我不知道在哪里为占位符赋值。我已经以编程方式配置了Flyway。我的sql文件包含, 创建架构 ${schemaName} 创建表${SchemaName}. brand(brand_codeID,brand_namevarchar(50)唯一不为空,活动char(1)

  • AccessibilityService在系统的内存管理方面与普通服务有何不同? 我想问的是:系统可以为了节省内存而关闭AccessibilityService吗?如果可以,当您进入AccessibilityService时,您会看到它打开还是关闭?用户是否必须再次手动打开? 使用startForeground是否有助于使AccessibilityService保持活动状态? 在一个类似的问题中,

  • 问题内容: 我想使用React在整个DOM中多次添加组件。这个小提琴显示了我要执行的操作,并且不会引发任何错误。这是代码: HTML: JS: 我已经看过这个问题了,恐怕通过上述操作,我将冒使React组件相互干扰的风险。该问题的答案建议使用服务器端渲染,这对我来说不是一个选择,因为我正在使用Django服务器端。 另一方面,也许我在做什么就可以了,因为我只安装了一个React库实例(而不是多个组