From 8954ec90143fb27f3b860a316531062b5d9e1171 Mon Sep 17 00:00:00 2001
From: zrj <646384940@qq.com>
Date: Fri, 30 Aug 2024 18:12:42 +0800
Subject: [PATCH] jdk 升级为 11 修改不兼容Base64

---
 src/main/java/org/springblade/modules/mechanism/controller/MechanismController.java       |    2 +-
 src/main/java/org/springblade/modules/road/controller/RoadController.java                 |    2 +-
 src/main/java/org/springblade/common/utils/Base64Util.java                                |   30 ++++++++++++++++++------------
 src/main/java/org/springblade/modules/architecture/controller/ArchitectureController.java |    2 +-
 src/main/java/org/springblade/modules/life/controller/LifeController.java                 |    2 +-
 pom.xml                                                                                   |    2 +-
 src/main/java/org/springblade/modules/qrcode/QrCodeController.java                        |    5 +++--
 src/main/java/org/springblade/modules/tagging/controller/TaggingController.java           |    5 +++--
 8 files changed, 29 insertions(+), 21 deletions(-)

diff --git a/pom.xml b/pom.xml
index ebb522c..85da324 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,7 +13,7 @@
         <bladex.project.id>zhxy</bladex.project.id>
         <bladex.project.version>2.8.2.RELEASE</bladex.project.version>
 
-        <java.version>1.8</java.version>
+        <java.version>11</java.version>
         <maven.plugin.version>3.8.1</maven.plugin.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
diff --git a/src/main/java/org/springblade/common/utils/Base64Util.java b/src/main/java/org/springblade/common/utils/Base64Util.java
index 15e44ac..26cb22c 100644
--- a/src/main/java/org/springblade/common/utils/Base64Util.java
+++ b/src/main/java/org/springblade/common/utils/Base64Util.java
@@ -1,12 +1,13 @@
 package org.springblade.common.utils;
 
-import sun.misc.BASE64Decoder;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Decoder;
+//import sun.misc.BASE64Encoder;
 
 import javax.imageio.stream.FileImageInputStream;
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
+import java.util.Base64;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
@@ -18,12 +19,11 @@
 	 */
 	public static byte[] decode(String base64Str){
 		byte[] b = null;
-		BASE64Decoder decoder = new BASE64Decoder();
-		try {
-			b = decoder.decodeBuffer(replaceEnter(base64Str));
-		} catch (IOException e) {
-			e.printStackTrace();
-		}
+		// jdk8
+//		BASE64Decoder decoder = new BASE64Decoder();
+		// jdk11
+		Base64.Decoder decoder = Base64.getMimeDecoder();
+		b = decoder.decode(replaceEnter(base64Str));
 		return b;
 	}
 
@@ -33,13 +33,19 @@
 	 * @return
 	 */
 	public static String encode(byte[] image){
-		BASE64Encoder decoder = new BASE64Encoder();
-		return replaceEnter(decoder.encode(image));
+		// jdk8
+//		BASE64Encoder decoder = new BASE64Encoder();
+		// jdk11
+		Base64.Encoder encoder = Base64.getMimeEncoder();
+		return replaceEnter(encoder.encodeToString(image));
 	}
 
 	public static String encode(String uri){
-		BASE64Encoder encoder = new BASE64Encoder();
-		return replaceEnter(encoder.encode(uri.getBytes()));
+		// jdk8
+//		BASE64Encoder encoder = new BASE64Encoder();
+		// jdk11
+		Base64.Encoder encoder = Base64.getMimeEncoder();
+		return replaceEnter(encoder.encodeToString(uri.getBytes()));
 	}
 
 	/**
diff --git a/src/main/java/org/springblade/modules/architecture/controller/ArchitectureController.java b/src/main/java/org/springblade/modules/architecture/controller/ArchitectureController.java
index 5672c33..fd46f68 100644
--- a/src/main/java/org/springblade/modules/architecture/controller/ArchitectureController.java
+++ b/src/main/java/org/springblade/modules/architecture/controller/ArchitectureController.java
@@ -53,7 +53,7 @@
 import org.springblade.modules.architecture.service.IArchitectureService;
 import org.springblade.core.boot.ctrl.BladeController;
 import springfox.documentation.annotations.ApiIgnore;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.*;
 import java.net.URLEncoder;
diff --git a/src/main/java/org/springblade/modules/life/controller/LifeController.java b/src/main/java/org/springblade/modules/life/controller/LifeController.java
index 376b937..b56e74e 100644
--- a/src/main/java/org/springblade/modules/life/controller/LifeController.java
+++ b/src/main/java/org/springblade/modules/life/controller/LifeController.java
@@ -36,7 +36,7 @@
 import org.springblade.modules.life.vo.LifeVO;
 import org.springblade.modules.life.service.ILifeService;
 import org.springblade.core.boot.ctrl.BladeController;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.IOException;
 import java.net.URLEncoder;
diff --git a/src/main/java/org/springblade/modules/mechanism/controller/MechanismController.java b/src/main/java/org/springblade/modules/mechanism/controller/MechanismController.java
index d0d7200..8335307 100644
--- a/src/main/java/org/springblade/modules/mechanism/controller/MechanismController.java
+++ b/src/main/java/org/springblade/modules/mechanism/controller/MechanismController.java
@@ -45,7 +45,7 @@
 import org.springblade.modules.mechanism.service.IMechanismService;
 import org.springblade.core.boot.ctrl.BladeController;
 import springfox.documentation.annotations.ApiIgnore;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
diff --git a/src/main/java/org/springblade/modules/qrcode/QrCodeController.java b/src/main/java/org/springblade/modules/qrcode/QrCodeController.java
index b9dd6fa..98fd887 100644
--- a/src/main/java/org/springblade/modules/qrcode/QrCodeController.java
+++ b/src/main/java/org/springblade/modules/qrcode/QrCodeController.java
@@ -12,12 +12,13 @@
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.net.URLEncoder;
+import java.util.Base64;
 
 /**
  * @author zhongrj
@@ -74,7 +75,7 @@
 		if (null!=securityNumber) {
 			String content = url + "?securityNumber=" + securityNumber;
 			byte[] qrCodeImage = QRCodeUtil.getQRCodeImage(content, 350, 350);
-			String encode = new BASE64Encoder().encode(qrCodeImage);
+			String encode = Base64.getMimeEncoder().encodeToString(qrCodeImage);
 			return "data:image/png;base64,"+encode;
 		}
 		return null;
diff --git a/src/main/java/org/springblade/modules/road/controller/RoadController.java b/src/main/java/org/springblade/modules/road/controller/RoadController.java
index 0164263..a0e97b8 100644
--- a/src/main/java/org/springblade/modules/road/controller/RoadController.java
+++ b/src/main/java/org/springblade/modules/road/controller/RoadController.java
@@ -35,7 +35,7 @@
 import org.springblade.modules.road.vo.RoadVO;
 import org.springblade.modules.road.service.IRoadService;
 import org.springblade.core.boot.ctrl.BladeController;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.IOException;
 import java.net.URLEncoder;
diff --git a/src/main/java/org/springblade/modules/tagging/controller/TaggingController.java b/src/main/java/org/springblade/modules/tagging/controller/TaggingController.java
index 04ef437..05b1cda 100644
--- a/src/main/java/org/springblade/modules/tagging/controller/TaggingController.java
+++ b/src/main/java/org/springblade/modules/tagging/controller/TaggingController.java
@@ -38,12 +38,13 @@
 import org.springblade.modules.tagging.vo.TaggingVO;
 import org.springblade.modules.tagging.service.ITaggingService;
 import org.springblade.core.boot.ctrl.BladeController;
-import sun.misc.BASE64Encoder;
+//import sun.misc.BASE64Encoder;
 
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.net.URLDecoder;
 import java.net.URLEncoder;
+import java.util.Base64;
 
 import static org.springblade.common.config.qCodeConfig.*;
 
@@ -122,7 +123,7 @@
 		String content = url + "?methods=" + gotos+"&jd="+jd+"&x="+x+"&wd="+wd+"&name="+name +"&addressName=" + addressName ;
 		//生成标注二维码
 		byte[] qrCodeImage = QRCodeUtil.getQRCodeImage(content, 350, 350);
-		String encode = new BASE64Encoder().encode(qrCodeImage);
+		String encode = Base64.getMimeEncoder().encodeToString(qrCodeImage);
 		//设置二维码
 		String a = "data:image/png;base64," + encode;
 		tagging.setQrcode(a);

--
Gitblit v1.9.3