JAVA name.trim_Java StringUtils.trim方法代码示例

import org.apache.commons.lang3.StringUtils; //导入方法依赖的package包/类

/**

* 解析处理注释,增加 getXxxText() 方法

* 注释格式范例:

* @enum 0: 有效期; 1: 无效

*/

@Override

public boolean modelGetterMethodGenerated(Method method, TopLevelClass topLevelClass,

IntrospectedColumn introspectedColumn,

IntrospectedTable introspectedTable,

ModelClassType modelClassType) {

String remarks = introspectedColumn.getRemarks();

int jdbcType = introspectedColumn.getJdbcType();

remarks = StringUtils.trimToNull(remarks);

if (remarks == null) {

return true;

}

if (!remarks.contains("@enum")) {

return true;

}

String annotation = remarks.substring(remarks.indexOf("@enum") + 5);

String[] items = StringUtils.split(annotation, ';');

StringBuilder mapInitSb = new StringBuilder("new HashMap(){{");

for (String item : items) {

if (!item.contains(":")) {

continue;

}

String[] kv = item.split(":");

String k = StringUtils.trim(kv[0]);

String v = StringUtils.trim(kv[1]);

mapInitSb.append("put(");

if (jdbcType == Types.TINYINT) {

mapInitSb.append("(byte)");

}

mapInitSb.append(k).append(",")

.append("\"").append(v).append("\");");

}

mapInitSb.append("}}");

// 增加常量

String fieldName = String.format("%sMap", introspectedColumn.getJavaProperty());

Field field = new Field(

fieldName,

new FullyQualifiedJavaType("java.util.HashMap")

);

field.setVisibility(JavaVisibility.PRIVATE);

field.setStatic(true);

field.setFinal(true);

field.setInitializationString(mapInitSb.toString());

topLevelClass.addField(field);

// 增加方法

Method textMethod = new Method(String.format("%sText", method.getName()));

textMethod.setReturnType(new FullyQualifiedJavaType(String.class.getCanonicalName()));

textMethod.setVisibility(JavaVisibility.PUBLIC);

if (jdbcType == Types.TINYINT) {

textMethod.addBodyLine(String.format("return %s.get((byte)this.%s);", fieldName, introspectedColumn.getJavaProperty()));

} else {

textMethod.addBodyLine(String.format("return %s.get(this.%s);", fieldName, introspectedColumn.getJavaProperty()));

}

remarks = remarks.replaceAll("\n", "\\\\n").replaceAll("\"", "\\\\\"");

textMethod.addAnnotation(

String.format("@ApiModelProperty(value = \"%s\")", remarks)

);

topLevelClass.addImportedType(new FullyQualifiedJavaType(HashMap.class.getCanonicalName()));

topLevelClass.addMethod(textMethod);

return true;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值