From a8ba678a3fe5a39da2c732014cebbb66e408e97c Mon Sep 17 00:00:00 2001 From: WangHan <wwh_work@126,com> Date: 星期三, 02 四月 2025 18:45:12 +0800 Subject: [PATCH] 问题与漏洞修改 --- consum-base/src/main/java/com/consum/base/core/utils/CommonUtil.java | 48 ++++++++++++++++++++++++++++++++++++------------ 1 files changed, 36 insertions(+), 12 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/core/utils/CommonUtil.java b/consum-base/src/main/java/com/consum/base/core/utils/CommonUtil.java index 71ad5ec..95db530 100644 --- a/consum-base/src/main/java/com/consum/base/core/utils/CommonUtil.java +++ b/consum-base/src/main/java/com/consum/base/core/utils/CommonUtil.java @@ -1,21 +1,20 @@ package com.consum.base.core.utils; // @formatter:off +import cn.hutool.core.util.ReflectUtil; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.servlet.ServletInputStream;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServletResponse;import org.springframework.beans.BeanUtils; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; +import java.lang.reflect.Field; +import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; -import javax.servlet.ServletInputStream; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import org.springframework.web.context.request.RequestContextHolder; -import org.springframework.web.context.request.ServletRequestAttributes; /** * .-~~~~~~~~~-._ _.-~~~~~~~~~-. @@ -62,7 +61,7 @@ */ public static String Underline2camel(String para) { StringBuilder result = new StringBuilder(); - String a[] = para.split("_"); + String[] a = para.split("_"); for (String s : a) { if (!para.contains("_")) { result.append(s); @@ -84,7 +83,8 @@ * @Description : 鑾峰彇request */ public static HttpServletRequest getRequest() { - ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder + .getRequestAttributes(); HttpServletRequest request = requestAttributes.getRequest(); return request; } @@ -95,7 +95,8 @@ * @Description : response */ public static HttpServletResponse getResponse() { - ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + ServletRequestAttributes requestAttributes = (ServletRequestAttributes) RequestContextHolder + .getRequestAttributes(); HttpServletResponse response = requestAttributes.getResponse(); return response; } @@ -138,7 +139,8 @@ // 鍒ゆ柇鎺掑簭asc鍜宒esc if (returnMap.containsKey("sortOrder") && returnMap.get("sortOrder") != null && returnMap.get("sortOrder") != "") { - if (!"DESC".equals(convert2Str(returnMap.get("sortOrder")).toUpperCase()) && !"ASC".equals(convert2Str(returnMap.get("sortOrder")).toUpperCase())) { + if (!"DESC".equals(convert2Str(returnMap.get("sortOrder")).toUpperCase()) + && !"ASC".equals(convert2Str(returnMap.get("sortOrder")).toUpperCase())) { returnMap.put("sortOrder", ""); } } @@ -233,4 +235,26 @@ return null; } + public static void copyProperties(Object source, Object target) { + BeanUtils.copyProperties(source, target); + Class<?> sourceClass = source.getClass(); + // 鑾峰彇褰撳墠绫讳互鍙婃墍鏈夌埗绫荤殑瀛楁 + while (sourceClass != null) { + Field[] fields = sourceClass.getDeclaredFields(); + for (Field field : fields) { + String fieldName = field.getName(); + if (!fieldName.startsWith("isset_")) { + continue; + } + try { + Object fieldValue = ReflectUtil.getFieldValue(source, field); + ReflectUtil.setFieldValue(target, field, fieldValue); + } catch (Exception e) { + System.out.println(e.getMessage()); + } + } + sourceClass = sourceClass.getSuperclass(); + } + } + } -- Gitblit v1.9.1