Commit 109c64e7c20e044ee3fa650f0d0599aeb64633e8

Authored by RuoYi
1 parent c0cd030d

批量替换表前缀调整

ruoyi/src/main/java/com/ruoyi/common/filter/RepeatableFilter.java
... ... @@ -9,8 +9,6 @@ import javax.servlet.ServletRequest;
9 9 import javax.servlet.ServletResponse;
10 10 import javax.servlet.http.HttpServletRequest;
11 11  
12   -import com.ruoyi.common.enums.HttpMethod;
13   -
14 12 /**
15 13 * Repeatable 过滤器
16 14 *
... ... @@ -28,16 +26,19 @@ public class RepeatableFilter implements Filter
28 26 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
29 27 throws IOException, ServletException
30 28 {
31   - HttpServletRequest req = (HttpServletRequest) request;
32   - if (HttpMethod.PUT.name().equals(req.getMethod()) || HttpMethod.POST.name().equals(req.getMethod()))
  29 + ServletRequest requestWrapper = null;
  30 + if (request instanceof HttpServletRequest)
33 31 {
34   - RepeatedlyRequestWrapper repeatedlyRequest = new RepeatedlyRequestWrapper((HttpServletRequest) request);
35   - chain.doFilter(repeatedlyRequest, response);
  32 + requestWrapper = new RepeatedlyRequestWrapper((HttpServletRequest) request, response);
36 33 }
37   - else
  34 + if (null == requestWrapper)
38 35 {
39 36 chain.doFilter(request, response);
40 37 }
  38 + else
  39 + {
  40 + chain.doFilter(requestWrapper, response);
  41 + }
41 42 }
42 43  
43 44 @Override
... ...
ruoyi/src/main/java/com/ruoyi/common/filter/RepeatedlyRequestWrapper.java
... ... @@ -4,12 +4,12 @@ import java.io.BufferedReader;
4 4 import java.io.ByteArrayInputStream;
5 5 import java.io.IOException;
6 6 import java.io.InputStreamReader;
7   -import java.nio.charset.Charset;
8 7 import javax.servlet.ReadListener;
9 8 import javax.servlet.ServletInputStream;
  9 +import javax.servlet.ServletResponse;
10 10 import javax.servlet.http.HttpServletRequest;
11 11 import javax.servlet.http.HttpServletRequestWrapper;
12   -import com.ruoyi.common.utils.StringUtils;
  12 +import com.ruoyi.common.utils.http.HttpHelper;
13 13  
14 14 /**
15 15 * 构建可重复读取inputStream的request
... ... @@ -20,10 +20,13 @@ public class RepeatedlyRequestWrapper extends HttpServletRequestWrapper
20 20 {
21 21 private final byte[] body;
22 22  
23   - public RepeatedlyRequestWrapper(HttpServletRequest request) throws IOException
  23 + public RepeatedlyRequestWrapper(HttpServletRequest request, ServletResponse response) throws IOException
24 24 {
25 25 super(request);
26   - body = readBytes(request.getReader(), "utf-8");
  26 + request.setCharacterEncoding("UTF-8");
  27 + response.setCharacterEncoding("UTF-8");
  28 +
  29 + body = HttpHelper.getBodyString(request).getBytes("UTF-8");
27 30 }
28 31  
29 32 @Override
... ... @@ -35,50 +38,35 @@ public class RepeatedlyRequestWrapper extends HttpServletRequestWrapper
35 38 @Override
36 39 public ServletInputStream getInputStream() throws IOException
37 40 {
  41 +
38 42 final ByteArrayInputStream bais = new ByteArrayInputStream(body);
  43 +
39 44 return new ServletInputStream()
40 45 {
41 46  
42 47 @Override
43   - public boolean isFinished()
  48 + public int read() throws IOException
44 49 {
45   - return false;
  50 + return bais.read();
46 51 }
47 52  
48 53 @Override
49   - public boolean isReady()
  54 + public boolean isFinished()
50 55 {
51 56 return false;
52 57 }
53 58  
54 59 @Override
55   - public void setReadListener(ReadListener listener)
  60 + public boolean isReady()
56 61 {
57   -
  62 + return false;
58 63 }
59 64  
60 65 @Override
61   - public int read() throws IOException
  66 + public void setReadListener(ReadListener readListener)
62 67 {
63   - return bais.read();
  68 +
64 69 }
65 70 };
66 71 }
67   -
68   - /**
69   - * 通过BufferedReader和字符编码集转换成byte数组
70   - */
71   - private byte[] readBytes(BufferedReader br, String encoding) throws IOException
72   - {
73   - String str = null, retStr = "";
74   - while ((str = br.readLine()) != null)
75   - {
76   - retStr += str;
77   - }
78   - if (StringUtils.isNotBlank(retStr))
79   - {
80   - return retStr.getBytes(Charset.forName(encoding));
81   - }
82   - return null;
83   - }
84 72 }
... ...
ruoyi/src/main/java/com/ruoyi/project/tool/gen/util/GenUtils.java
... ... @@ -180,7 +180,7 @@ public class GenUtils
180 180 */
181 181 public static String replaceFirst(String replacementm, String[] searchList)
182 182 {
183   - String text = StringUtils.EMPTY;
  183 + String text = replacementm;
184 184 for (String searchString : searchList)
185 185 {
186 186 if (replacementm.startsWith(searchString))
... ...