一、前言
大家在日常开发过程中,肯定遇到过需要将数据库字段读出,转换为驼峰式,或者将驼峰式反解析到数据库字段的场景,小编在写代码生成工具类时,编写了驼峰与数据库字段下划线互转功能,各位可以拿走直接使用。
二、源码
2.1 下换线转驼峰
/**
* 下划线格式字符串转换为驼峰格式字符串
*
* @param param
* @return
*/
public static String underlineToHump(String param) {
//为空则返回
if (param == null || "".equals(param.trim())) {
return "";
}
//全部转换为小写
param = param.toLowerCase();
//返回值
StringBuilder sb = new StringBuilder("");
//不包含直接返回
if (!param.contains("_")) {
return param;
}
String arrays[] = param.split("");
//循环处理
for (int i = 0; i< arrays.length; i++){
//读取当前的字符
String s = arrays[i];
//如果当前字符为下划线,则替换下一个字符为大写
if(s.equals("_")){
int nextStep = i + 1;
if(nextStep <=arrays.length){
String next = arrays[nextStep];
next = next.toUpperCase();
arrays[nextStep] = next;
}
}else{
sb.append(s);
}
}
return sb.toString();
}
2.2 驼峰转为下划线
/**
* 驼峰转下划线
* @param param
* @return
*/
public static String humpToUnderLine(String param){
//为空则返回
if (param == null || "".equals(param.trim())) {
return "";
}
//返回值
StringBuilder sb = new StringBuilder("");
//拆分
String arrays[] = param.split("");
//循环处理
for (int i = 0; i< arrays.length; i++){
//取当前字符
String current = arrays[i];
//转为大写
String temp = current.toUpperCase();
//两个相等时,则在之前拼接下划线
if(temp.equals(current)){
sb.append("_").append(temp);
}
else{
//直接拼接字符
sb.append(temp);
}
}
return sb.toString();
}
2.3 代码测试
public static void main(String[] args) {
//初始变量
String underLine = "USER_SYS_CODE";
String hump = underlineToHump(underLine);
String underLineResult = humpToUnderLine(hump);
System.out.println(hump);
System.out.println(underLineResult);
}
2.4 效果如下

三、结尾
后续会更新更多小工具代码使用,大家觉得不错的可以关注下我的公众号,拜托啦

本文介绍了一款实用工具,能够实现数据库字段与驼峰命名方式之间的相互转换。该工具适用于日常开发中经常遇到的命名转换需求,提供源码及测试案例。
532

被折叠的 条评论
为什么被折叠?



