新手學plc學西門子還是三菱
阿新 • • 發佈:2021-12-08
pom依賴
<dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId> <version>3.3.3</version> </dependency> <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.3.3</version> </dependency>
utils工具
package com.abc.service; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.WriterException; import com.google.zxing.client.j2se.MatrixToImageWriter; import com.google.zxing.common.BitMatrix; import com.google.zxing.qrcode.QRCodeWriter; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; import java.io.IOException; import java.nio.file.FileSystems; import java.nio.file.Path; import java.util.Hashtable; public class utils { public static void getQR(String text, int width, int height, String filePath) throws WriterException, IOException { Hashtable hints = new Hashtable(); hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); hints.put(EncodeHintType.MARGIN, 1); //hints物件可以解決二維碼內容中文亂碼問題 QRCodeWriter qrCodeWriter = new QRCodeWriter(); BitMatrix bitMatrix = qrCodeWriter.encode(text, BarcodeFormat.QR_CODE, width, height,hints); Path path = FileSystems.getDefault().getPath(filePath); System.out.println("path======="+path); MatrixToImageWriter.writeToPath(bitMatrix, "PNG", path); } }
controller呼叫
@RequestMapping("save") public String save(UserTable user) throws IOException, WriterException { String a="凱凱凱子我愛你"; String fileName= UUID.randomUUID()+".png"; //將二維碼訂單圖片名稱插入資料庫中,便於前端回顯二維碼 String totalName="D:\\Tupian\\"+fileName; utils.getQR(a,100,100,totalName); //呼叫工具類,依次傳入二維碼內容、寬、高、以及要儲存在哪個路徑 user.setUserSf(fileName); Service.insert(user); return "redirect:/findAll"; }