免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

二維碼登錄java代碼 掃碼登錄javademo

Java如何用代碼生成二維碼

引用spire.barcode.jar包

為云巖等地區(qū)用戶提供了全套網頁設計制作服務,及云巖網站建設行業(yè)解決方案。主營業(yè)務為成都網站建設、網站設計、云巖網站設計,以傳統(tǒng)方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

//創(chuàng)建BarcodeSettings對象

BarcodeSettings?settings?=?new?BarcodeSettings();

//設置條碼類型為

QR二維碼settings.setType(BarCodeType.QR_Code);???????

//設置二維碼數(shù)據(jù)

settings.setData("Hello?123456789");

//設置二維碼顯示數(shù)據(jù)

settings.setData2D("Hello?123456789");?????

//設置數(shù)據(jù)類型

settings.setQRCodeDataMode(QRCodeDataMode.Alpha_Number);

//設置二維碼模型寬度

settings.setX(1.0f);

//設置二維碼糾錯級別settings.setQRCodeECL(QRCodeECL.H);

//創(chuàng)建BarCodeGenerator實例

BarCodeGenerator?barCodeGenerator?=?new?BarCodeGenerator(settings);

//根據(jù)settings生成圖像數(shù)據(jù),保存至BufferedImage

BufferedImage?bufferedImage?=?barCodeGenerator.generateImage();

//將圖片數(shù)據(jù)保存為PNG格式

ImageIO.write(bufferedImage,?"png",?new?File("QRCode.png"));

如何使用java開發(fā)二維碼代碼

1: 使用SwetakeQRCode在Java項目中生成二維碼

下載地址

或著

這個是日本人寫的,生成的是我們常見的方形的二維碼

可以用中文

如:5677777ghjjjjj

2: 使用BarCode4j生成條形碼和二維碼

BarCode4j網址:

barcode4j是使用datamatrix的二維碼生成算法,為支持qr的算法

datamatrix是歐美的標準,qr為日本的標準,

barcode4j一般生成出來是長方形的

如:88777alec000yan

這個博客這方面說的挺清楚的:

3:zxing

zxing 這個是google的

下載地址

Java代碼:

import java.io.File;

import java.util.Hashtable;

import com.google.zxing.BarcodeFormat;

import com.google.zxing.EncodeHintType;

import com.google.zxing.MultiFormatWriter;

import com.google.zxing.client.j2se.MatrixToImageWriter;

import com.google.zxing.common.BitMatrix;

import com.google.zxing.qrcode.QRCodeWriter;

public class QRCodeEvents {

public static void main(String []args)throws Exception{

String text = "你好";

int width = 100;

int height = 100;

String format = "png";

Hashtable hints= new Hashtable();

hints.put(EncodeHintType.CHARACTER_SET, "utf-8");

BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, width, height,hints);

File outputFile = new File("new.png");

MatrixToImageWriter.writeToFile(bitMatrix, format, outputFile);

}

}

4:google chart api就有實現(xiàn)二維碼的方法

利用這個api,使用google appengine進行實現(xiàn)。

5:JS生成二維碼

使用jQuery-qrcode生成二維碼

先簡單說一下jquery-qrcode,這個開源的三方庫(可以從 獲取),

qrcode.js 是實現(xiàn)二維碼數(shù)據(jù)計算的核心類,

jquery.qrcode.js 是把它用jquery方式封裝起來的,用它來實現(xiàn)圖形渲染,其實就是畫圖(支持canvas和table兩種方式)

支持的功能主要有:

Js代碼:

text : "" //設置二維碼內容

Js代碼:

render : "canvas",//設置渲染方式

width : 256, //設置寬度

height : 256, //設置高度

typeNumber : -1, //計算模式

correctLevel : QRErrorCorrectLevel.H,//糾錯等級

background : "#ffffff",//背景顏色

foreground : "#000000" //前景顏色

使用方式非常簡單

Js代碼:

jQuery('#output').qrcode({width:200,height:200,correctLevel:0,text:content});

經過簡單實踐,

使用canvas方式渲染性能還是非常不錯的,但是如果用table方式,性能不太理想,特別是IE9以下的瀏覽器,所以需要自行優(yōu)化一下渲染table的方式,這里就不細述了。

其實上面的js有一個小小的缺點,就是默認不支持中文。

這跟js的機制有關系,jquery-qrcode這個庫是采用 charCodeAt() 這個方式進行編碼轉換的,

而這個方法默認會獲取它的 Unicode 編碼,一般的解碼器都是采用UTF-8, ISO-8859-1等方式,

英文是沒有問題,如果是中文,一般情況下Unicode是UTF-16實現(xiàn),長度2位,而UTF-8編碼是3位,這樣二維碼的編解碼就不匹配了。

解決方式當然是,在二維碼編碼前把字符串轉換成UTF-8,具體代碼如下:

function utf16to8(str) {

var out, i, len, c;

out = "";

len = str.length;

for(i = 0; i len; i++) {

c = str.charCodeAt(i);

if ((c = 0x0001) (c = 0x007F)) {

out += str.charAt(i);

} else if (c 0x07FF) {

out += String.fromCharCode(0xE0 | ((c 12) 0x0F));

out += String.fromCharCode(0x80 | ((c 6) 0x3F));

out += String.fromCharCode(0x80 | ((c 0) 0x3F));

} else {

out += String.fromCharCode(0xC0 | ((c 6) 0x1F));

out += String.fromCharCode(0x80 | ((c 0) 0x3F));

}

}

return out;

}

怎么用Java實現(xiàn)一個掃二維碼的登錄

要做到快速的頁面上掃描,手機確認,登陸到界面,使用get操作是不現(xiàn)實的,使用WebSocket才能快速的推送消息。

界面中在首次打開時,就向服務器建立一個WebSocket鏈接,然后監(jiān)聽OnMessage方法。

手機中掃碼后,通過發(fā)送一個消息到服務器后臺,服務器后臺再通過webSocket找出那個頁面的位置,發(fā)送消息過去,讓其登陸。

比如115網盤的二維碼,就是一個長串,雖然看不懂,但是最簡單的做法就是WebSocket里面的Session的id,通過這個id,訪問一個指向行頁面,里面帶上115用戶的用戶id就可以了,你可以在115主頁上面選擇二維碼,然后查看其二維碼的信息,以及圖片里的uid信息。

當前文章:二維碼登錄java代碼 掃碼登錄javademo
URL鏈接:http://m.newbst.com/article18/dosjggp.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供品牌網站建設移動網站建設手機網站建設網站策劃ChatGPT定制網站

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網站建設