我有一些Java代码,其中的SQL语句编写为Java字符串(请不要使用OR / M烈火,嵌入式SQL就是它-不是我的决定)。
为了简化维护,我将SQL语句从语义上分成了几行代码,并由几行代码组成。因此,而不是像这样:
String query = "SELECT FOO, BAR, BAZ FROM ABC WHERE BAR > 4";
我有类似的东西:
String query =
"SELECT FOO, BAR, BAZ" +
" FROM ABC " +
" WHERE BAR > 4 ";
这种样式使SQL更易于阅读和维护(IMHO),尤其是对于较大的查询。例如,我可以将编辑器置于“覆盖”模式并相当容易地就地修改文本。
请注意,此问题超出了SQL的特定示例的范围。用任何垂直格式编写的任何代码,特别是表格结构,都容易被漂亮的打印机破坏。
现在,一些项目成员使用Eclipse编辑器,并且在格式化整个源文件时常常会破坏语义格式。
有没有一种方法可以指示Eclipse在格式化方面忽略某些源代码行?
我正在寻找类似特殊注释的东西,以切换Eclipse格式化程序。理想情况下,这样的注释可以配置为我们选择的任何内容,并且其他格式化程序也可以编程为尊重它:
// STOP-ECLIPSE-FORMATTING
String query =
"SELECT FOO, BAR, BAZ" +
" FROM ABC " +
" WHERE BAR > 4 ";
// START-ECLIPSE-FORMATTING
显然,“解决方案”是让我们的团队成员标准化一些外部格式化程序,例如Jalopy或JIndent,但这不是这个问题的目的(也是我对这个项目的决定):我正在寻找一种方法来临时避免使用Eclipse格式化程序。
理想情况下,一种解决方案将允许我插入Eclipse格式化程序的说明,而无需使用Eclipse的团队成员进行任何IDE重新配置(除了可能选择与格式化程序无关的命令注释:STOP-ECLIPSE-FORMATTING
→ STOP-FORMATTING
)。