相信很多童鞋跟我一个样,mybatis在写sql的时候,特别是对于字段比较多的,写个insert update的时候,写的贼烦,现在可以下面简单的方法可以迅速解决,直接上代码
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
private static final Pattern linePattern = Pattern.compile("_(\\w)");
private static final Pattern humpPattern = Pattern.compile("[A-Z]");
public static void main(String[] args) {
String str ="id,\n" +
" first_index_code,\n" +
" first_index_name,\n" +
" second_index_code,\n" +
" second_index_name,\n" +
" crt_user,crt_time,\n" +
" update_user,update_time";
str = str.replace("\n","");
for (String s : str.split(",")) {
System.out.println("#{"+lineToHump(s).trim()+"},");
}
}
/*下划线转驼峰*/
public static String lineToHump(String str) {
str = str.toLowerCase();
Matcher matcher = linePattern.matcher(str);
StringBuffer sb = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sb, matcher.group(1).toUpperCase());
}
matcher.appendTail(sb);
return sb.toString();
}
/** 驼峰转下划线,效率比上面高 */
public static String humpToLine(String str) {
Matcher matcher = humpPattern.matcher(str);
StringBuffer sb = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sb, "_" + matcher.group(0).toLowerCase());
}
matcher.appendTail(sb);
return sb.toString();
}
}