Multiple-line syntax 解决JAVA多行字符串拼接的问题

通过一个叫Monalisa的Eclipse插件可以实现类似CS6里面 `` 多行字符串拼接的效果. 这里简单放个安装使用过程.

GitHub有详细的安装说明,大家也可以自己看下.

第一步: 先把该插件的jar包下载下来: 下载地址

第二步: 把刚刚下载下来的jar包放到自己对应的eclipse/plugins文件夹下. 并重启Eclipse.

第三步: Auto-generate model classes (Saved: Ctrl+S).设置这步可以通过Ctrl+S快捷键自动解析注释生成我们要的代码.

    选中项目,右键点击Properties->Java Compiler->Annotation Processing, 启用Enable annotation processing.

    

第四步: Auto-Generate DTOs.

    Window->Preferences->Java->Editor->Save Action -> Configure -> monalisa. 启用@select

  

第五步: 走到这步,其实这个插件已经可以使用了. 但最好还是设置个注释模板.方便使用. 

    选择Windows->Preferences->Java->Editor->Templates, 输入模板名称: mline   模板内容: ""/**~!{${cursor}}*/

    

以上全部设置完成后,测试下:

String lines = mlines

在mlines后面按下快捷ALT+/,生成注释模板:

String lines = ""/**~ {
    
}*/;

在大花括号内输入输入要拼接的字符串:

String lines = ""/**~ {
    SELECT * 
        FROM user
        WHERE name="zzg"
}*/;
System.out.println(lines);

Ctrl+S保存后,鼠标移到左侧会显示拼接好的字符串:

如果如要插入已经声明的变量,可用"$"或者"${}"来插入,"${}"里面还可以做简单的逻辑运算:

String name="zzg";
System.out.println(""/**~!{
    This is an example with var$:
    name="$name" OR name=${name} OR ${"zzgA".equals(name)?"A":"B"}
}*/);
This is an example with var$:
name="zzg" OR name=zzg OR B

 

最后感谢大佬@zzg zhou的分享.这里是他这个项目的GitHub地址: https://github.com/11039850/monalisa-orm

 

posted @ 2018-05-04 10:16  阿拉kiyo  Views(5256)  Comments(1Edit  收藏  举报