把对象或者属性改为骆驼峰结构,这是多年前的代码
代码逻辑灰常的简单,遇到_,改为大写.
查看了spring的源码后,使用的是字符数组,效率应用会好点
遍历字符串,替换字符.
/**
* 骆驼峰结构: 比如gmt_modify ==> gmtModify
*
* @param columName
* @return
*/
public static String camelName(String columName) {
StringBuilder result = new StringBuilder();
String[] column_s = columName.split("_");
int i = 0;
for (String column_ : column_s) {
if (i == 0) {
if (StringUtils.isBlank(column_)) {
return columName;
}
result.append(column_);
} else {
if (StringUtils.isNotBlank(column_)) {
result.append(column_.substring(0, 1).toUpperCase())
.append(column_.substring(1));
}
}
i++;
}
return result.toString();
}
代码逻辑灰常的简单,遇到_,改为大写.
查看了spring的源码后,使用的是字符数组,效率应用会好点
/**
* 骆驼峰结构: 比如gmt_modify ==> gmtModify
*
* @param columName
* @return
*/
public static String camelName(String columName) {
char[] chars = columName.toCharArray();
char[] result = new char[chars.length];
int curpos = 0;
boolean upperCaseNext = false;
for(char ch:chars){
if(ch == '_'){
upperCaseNext = true;
}else if(upperCaseNext){
result[curpos++] = Character.toUpperCase(ch);
upperCaseNext = false;
}else{
result[curpos++] = ch;
}
}
return new String(result,0,curpos);
}
遍历字符串,替换字符.