自用工具类整理
自动生成数据
uuid&雪花id
private static Long workerId = 1L;
private static Long datacenterId = 1L;
private static Snowflake snowflake = IdUtil.createSnowflake(workerId, datacenterId);public static String getId(String idType) {if (idType.equals("uuid")) {UUID uuid = UUID.randomUUID();return uuid.toString();} else {return snowflake.nextIdStr();}
}
数据类型转换
主要用以对Map<String, Object>对象的数据转换处理
BigDecimal
public static BigDecimal parseBigDecimal(Object decimalString) {if (decimalString == null || "".equals(decimalString) || "0".equals(decimalString) || "0.00".equals(decimalString)) {return new BigDecimal("0");} else {try {return new BigDecimal(decimalString.toString());} catch (Exception e) {return (BigDecimal) decimalString;}}
}
Date
主要用于LocalDateTime类型字符串转Date格式
public static String localDateTimeStringToDateString(String localDateTime) {// 2023-09-06T15:15:04.8651735+08:00// 2023-08-10T00:00:00if (StringUtils.isNotEmpty(localDateTime) && localDateTime.contains("T")) {String dateString = "";if (localDateTime.contains(".")) {dateString = localDateTime.split("T")[0] + " " + localDateTime.split("T")[1].split("\\.")[0];} else {dateString = localDateTime.split("T")[0] + " " + localDateTime.split("T")[1];}return dateString;}return localDateTime;
}
字符串转集合
public class StringToListUtil {// 将传入的s001需处理为json的字符串字段数据转化为jsonpublic static List<Map<String, String>> toJson(String s) {// 创建一个map数组用来保存转换好的数据List<Map<String, String>> mapList = new ArrayList<>();if ("[]".equals(s)) {return mapList;}// 去掉字符串开头的“[{”和结尾的“}]”s = s.substring(2, s.length() - 3);// 通过“},{”分割出各个对象String[] ss = s.split("},\\{");// 处理各个对象for (String s1 : ss) {// 通过“,”分割出各个对象的各个元素键值String[] split = s1.split(",");Map<String, String> map = new HashMap<>();// 处理各个元素键值for (int i = 0; i < split.length; i++) {// 去掉开头的“"”,方便之后通过定位“"”来分割属性名和属性值split[i] = split[i].substring(1);// 通过“"”和“:”分割出属性名、属性值try {map.put(split[i].substring(0, split[i].indexOf("\"")), split[i].substring(split[i].indexOf(":") + 1));} catch (Exception e) {
// e.printStackTrace();System.out.println(e.getMessage());}}// 将当前对象保存到对象数组mapList(所有信息)mapList.add(map);}// 返回return mapList;}// 将传入的格式为{"sql":null,"layout":[]}的// s001需处理为json的字符串字段数据转化为jsonpublic static List<Map<String, String>> toJsonHaveSql(String s) {s = s.substring(21, s.length() - 1);// 创建一个map数组用来保存转换好的数据List<Map<String, String>> mapList = new ArrayList<>();// 去掉字符串开头的“[{”和结尾的“}]”s = s.substring(2, s.length() - 3);// 通过“},{”分割出各个对象String[] ss = s.split("},\\{");// 处理各个对象for (String s1 : ss) {// 通过“,”分割出各个对象的各个元素键值String[] split = s1.split(",");Map<String, String> map = new HashMap<>();// 处理各个元素键值for (int i = 0; i < split.length; i++) {// 去掉开头的“"”,方便之后通过定位“"”来分割属性名和属性值split[i] = split[i].substring(1);// 通过“"”和“:”分割出属性名、属性值map.put(split[i].substring(0, split[i].indexOf("\"")), split[i].substring(split[i].indexOf(":") + 1));}// 将当前对象保存到对象数组mapList(所有信息)mapList.add(map);}// 返回return mapList;}
}
.setScale(7, RoundingMode.HALF_UP)
, 7, BigDecimal.ROUND_HALF_UP