velocity模板生成的代码格式错乱,没有很好的可读性

velocity模板生成的代码格式错乱,没有很好的可读性通过 velocity 模板生成的代码 可能出现格式错乱问题 这里做个总结 帮助部分需要的人 苦笑 一般代码编写有格式要求的程序猿吧 通常在写 velocity 模板时通常都是这样写的 如下 foreach columnin columns if Entity amp amp item 7 amp amp table isSuperColum

通过velocity 模板生成的代码,可能出现格式错乱问题,这里做个总结,帮助部分需要的人 (苦笑)

一般代码编写有格式要求的程序猿吧(或者idea进行代码格式化后),通常在写velocity模板时通常都是这样写的,如下:

#foreach ($column in $columns) #if(!$Entity && $item != 7 && $table.isSuperColumn($column.javaField)) / $column.columnComment */ @ApiModelProperty(value = "$column.columnComment") #if($column.javaField == $pkColumn.javaField) @TableId(value = "$pkColumn.columnName", type = IdType.AUTO) #elseif( $column.javaField.indexOf("create") > -1) @TableField(value = "$column.columnName", fill = FieldFill.INSERT) #elseif($column.javaField.indexOf("modify") > -1) @TableField(value = "$column.columnName", fill = FieldFill.UPDATE) #end private $column.javaType $column.javaField; #elseif(!$table.isSuperColumn($column.javaField)) / $column.columnComment */ @ApiModelProperty(value = "$column.columnComment") private $column.javaType $column.javaField; #end #end 

这样写最起码好看吧,然而生成的代码如下:

 / 任务ID */ @ApiModelProperty(value = "任务ID") private Long jobId; / 任务名称 */ @ApiModelProperty(value = "任务名称") private String jobName; / 任务组名 */ @ApiModelProperty(value = "任务组名") private String jobGroup; / 调用目标字符串 */ @ApiModelProperty(value = "调用目标字符串") private String invokeTarget; / cron执行表达式 */ @ApiModelProperty(value = "cron执行表达式") private String cronExpression; / 计划执行错误策略(1立即执行 2执行一次 3放弃执行) */ @ApiModelProperty(value = "计划执行错误策略(1立即执行 2执行一次 3放弃执行)") private String misfirePolicy; / 是否并发执行(0允许 1禁止) */ @ApiModelProperty(value = "是否并发执行(0允许 1禁止)") private String concurrent; / 状态(0正常 1暂停) */ @ApiModelProperty(value = "状态(0正常 1暂停)") private String status; / 创建者 */ @ApiModelProperty(value = "创建者") @TableField(value = "create_by",fill = FieldFill.INSERT) private String createBy; 

WTF?不对啊,按理说我代码是对齐了的啊,结果,呵呵呵,没办法,velocity模板 就是这么任性 (苦笑)


试试如下的方式吧 ,貌似我通过去空格也不能解决,只能用如下方式解决(苦笑)

velocity 模板 这么对齐
#foreach ($column in $columns) #if(!$Entity && $item != 7 && $table.isSuperColumn($column.javaField)) / $column.columnComment */ @ApiModelProperty(value = "$column.columnComment") #if($column.javaField == $pkColumn.javaField) @TableId(value = "$pkColumn.columnName", type = IdType.AUTO) #elseif( $column.javaField.indexOf("create") > -1) @TableField(value = "$column.columnName",fill = FieldFill.INSERT) #elseif($column.javaField.indexOf("modify") > -1) @TableField(value = "$column.columnName",fill = FieldFill.UPDATE) #end private $column.javaType $column.javaField; #elseif(!$table.isSuperColumn($column.javaField)) / $column.columnComment */ @ApiModelProperty(value = "$column.columnComment") private $column.javaType $column.javaField; #end #end 
生成的代码就是正常的了(苦笑),如下:
 / 任务ID */ @ApiModelProperty(value = "任务ID") private Long jobId; / 任务名称 */ @ApiModelProperty(value = "任务名称") private String jobName; / 任务组名 */ @ApiModelProperty(value = "任务组名") private String jobGroup; / 调用目标字符串 */ @ApiModelProperty(value = "调用目标字符串") private String invokeTarget; / cron执行表达式 */ @ApiModelProperty(value = "cron执行表达式") private String cronExpression; / 计划执行错误策略(1立即执行 2执行一次 3放弃执行) */ @ApiModelProperty(value = "计划执行错误策略(1立即执行 2执行一次 3放弃执行)") private String misfirePolicy; / 是否并发执行(0允许 1禁止) */ @ApiModelProperty(value = "是否并发执行(0允许 1禁止)") private String concurrent; / 状态(0正常 1暂停) */ @ApiModelProperty(value = "状态(0正常 1暂停)") private String status; / 创建者 */ @ApiModelProperty(value = "创建者") @TableField(value = "create_by",fill = FieldFill.INSERT) private String createBy; 

这样就对齐了,相当于是 velocity 的表达式什么的最好不要用tab对齐,自己的代码对齐就行(苦笑)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177146.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午8:12
下一篇 2026年3月26日 下午8:12


相关推荐

  • mysql中length函数_length中文

    mysql中length函数_length中文1、length:返回字符串所占的字节数selectlength(“10,A,B”);2、char_length:返回字符串的字符数selectchar_length(“10,A,B”);归纳:应用场景1.查询字符串长度length(str)2.查询列最大字符串长度max(length(str))3.查询某个字符出现几次length(str1)-length(replace(‘str1’,’str2’,”))4.length求得是字符长度。【1个中文、英文字母、数字、中文

    2022年5月3日
    422
  • ipad越狱有什么坏处吗?_平板越狱有什么好处

    ipad越狱有什么坏处吗?_平板越狱有什么好处1. iPad越狱是什么?iPad越狱有什么好处和坏处?不越狱又有啥缺点?越狱就是解除一些原版固件的限制。最大的好处是可以安装激活成功教程的软件和游戏,这些软件和游戏本来都是收费的。而且,有些功能很强大的软件,并不是花钱能在官方的App Store里能买到的(某些有米之人或许会说“我就不越狱,我都花钱买正版”,我只能客气地说他只知其一不知其二),比如SBSettings, OpenSSH, Lockd

    2025年11月19日
    6
  • 引入iframe标签 404

    引入iframe标签 404nbsp 自己学习 springboot 项目 有一个页面里有 lt iframe gt 标签引入另外一个同目录的 html 如下 lt divid bd gt lt iframewidth 100 height 100 id mainIframe src nav html frameborder 0 amp a

    2026年3月16日
    1
  • rsyslogd内存占用率高_怎么减少系统内存占用

    rsyslogd内存占用率高_怎么减少系统内存占用用top,用ps都能看到。相伴的systemd-journalcpu和内存占用也很高。systemd-journal使用了持久化模式。其中一个服务1秒钟内打非常多的日志。一天好几个G。另外,sudojournalctl–verify也有错误输出。其他没什么异常。https://blog.csdn.net/qq_25518029/article/details/12001067…

    2022年8月15日
    9
  • CSS居中弹窗技巧:Flex与Position结合使用

    CSS居中弹窗技巧:Flex与Position结合使用

    2026年3月12日
    2
  • LaTex数学公式_markdown怎么写数学公式

    LaTex数学公式_markdown怎么写数学公式LaTeX数学公式,包含前言,注意事项,插入公式,注释,编号,转义字符,换行与对齐,字体,空格,上下标,括号,大括号和行标,分式,开方,对数,省略号,最值,方程组和分段函数,累加和累乘,矢量,积分,极限,导数与偏导,矩阵,表格,希腊字母,运算符,戴帽符号,特殊符号,等等。

    2022年5月3日
    64

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号