1. 程式人生 > 其它 >新手學plc學西門子還是三菱

新手學plc學西門子還是三菱

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";
    }