我有一个应用程序需要使用不同的端口号运行两次,有没有办法可以将端口号作为命令行参数传递并在 spring 上下文文件中检索它们。
<bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL">
<value>vm://localhost:${<i>port number goes here</i>}</value>
</property>
</bean>
最佳答案
如果它是作为系统属性传递的,则可以这样做。在 JVM 命令中添加 -Dport.number=8080 (或您想要的任何端口),然后将属性值更改为:
<bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL">
<value>vm://localhost:${port.number}/value>
</property>
</bean>
即。
java -Dport.number=8080 com.package.MyMain
关于java - 使用命令行参数将值注入(inject)spring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14571342/