我的应用程序需要外部化查询,因此为了使用默认的resourcebundle,我决定使用属性文件中的查询。所以,这是属性文件现在的样子:
SELECT_USER_QUERY = Select username, userid from user where userid=?
INSERT_USER_QUERY = insert into user values (?,?)
这里的问题显然不是一个showstopper - 这个属性文件被拾取并得到很好的处理,但是对于有人在不久的将来编辑,它看起来很难看。我想要这样的东西:
SELECT_USER_QUERY = select username, userid
from user
where userid=?
我想在我的属性文件中看到格式化。我认为一种方法是在每一行的末尾引入一个“\”(根据SO的一些答案)。有没有其他方法可以在属性文件中保留格式并仍然成功加载它?
答案 0 :(得分:3)
只需在行尾添加\,不得将其解释为换行符。 没有其他方法可以保留属性文件中的格式(换行符)
答案 1 :(得分:2)
没有理由将自己局限于属性文件。为什么不简单地将上面的内容存储在一个文本文件中,并且每个查询/语句都有(例如)一个文本文件?这样,有人可以编辑文本文件,而不必担心属性样式的格式化。
答案 2 :(得分:0)
确定。我认为一种方法(我很可能会这样做)是在属性文件中编写所有查询,但每个查询值跨越多个格式化的行。我将使用自定义ResourceBundle以自定义方式加载这些属性。这样,我可以确保在属性文件中存在格式,并使用ResourceBundle确保代码方式加载属性。