【发布时间】:2016-10-17 21:54:24
【问题描述】:
我正在尝试使用 @PropertySource 和 Environment 变量在 Spring @Configuration java 类中加载 config.proprties 文件数据。
示例:http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/context/annotation/PropertySource.html 问题是,我有一个属性,其值如下:
serverName = abc\xyz
当我通过 using 方法读取这个属性时,
String server= env.getProprty("serverName");
System.out.print(server);
值打印为“abcxyz”。
请注意,我尝试使用双反斜杠,例如,
serverName = abc\\xyz
但它仍然只是从值字符串中忽略 \。 我也不能用正斜杠代替反斜杠。
你能帮我修一下吗?提前致谢!!
【问题讨论】:
-
也许
/- 正常的斜线 - 会做,因为 Windows 通常是 POSIX 兼容的。 -
在属性文件中,\需要在属性文件中转义 \\(参见docs.oracle.com/cd/E23095_01/Platform.93/ATGProgGuide/html/…)。它未打印的事实并不一定意味着它不存在,它可以通过打印再次解释为转义字符。由于
\x不是任何东西(afaik),它会删除它。 -
不,它没有读取 \,因为我在进一步处理 d 值时遇到异常
-
@Sanjeev 你找到解决这个问题的方法了吗?
-
这仍然是一个悬而未决的问题。
标签: java spring spring-annotations spring-web