orcal下划线转驼峰
当你使用了as取了别名但是前端获取接口的时候还不是驼峰的命名那么你就需要转一下了当然很简单不会很难 当时我看了mybatis-plus的官网说加别名加单引号就可以我试过了,可能是我的问题不是很行所以自己解决了
# 方法如下
//大写底杆转驼峰
private static String doParseCamelCase(String string) {
StringBuilder stringBuilder = new StringBuilder();
if (string.contains("_")) {
String[] split = string.split("_");
stringBuilder.append(split[0].trim().toLowerCase());
for (int i = 1; i < split.length; i++) {
String origin = split[i].trim();
if (StringUtils.isBlank(origin))
continue;
String upperChar = String.valueOf(origin.charAt(0)).toUpperCase();
String after = upperChar + origin.substring(1).toLowerCase();
stringBuilder.append(after);
}
} else {
stringBuilder.append(string.toLowerCase().trim());
}
return stringBuilder.toString();
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 测试调用
public static void main(String[] args) {
HashMap<String, Object> stringObjectMap = new HashMap<>();
HashMap<Object, Object> resultMap = new HashMap<>();
stringObjectMap.put("a_b","123");
stringObjectMap.forEach((k, v) -> resultMap.put(doParseCamelCase(k.toString()), v));
System.out.println(resultMap);
}
1
2
3
4
5
6
7
2
3
4
5
6
7
简单根据需求不同在哪里调用都可以!
# 题外话
比如我这个是list里面的Map就需要一次循环替换了!抄的时候注意思考
List list = dataBaseDao.queryLowerCaseMapBySql(sql);
for (int i = 0; i < list.size(); i++) {
HashMap<String, Object> resultMap = new HashMap<>();
Map item = (Map)list.get(i);
item.forEach((k, v) -> resultMap.put(doParseCamelCase(k.toString()), v));
list.set(i,resultMap);
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
上次更新: 2022/11/08, 18:52:50