Code
1、生成條碼的servlet代碼:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.oned.Code128Writer;
/**
* @Description: 生成條碼(CODE128格式) */
public class BarCode1DServlet extends HttpServlet {
/**
* @Fields serialVersionUID : defaultserialVersionUID
*/
privatestatic final long serialVersionUID = 1L;
privatestatic final String KEY = "keycode";
privatestatic final String WIDTH = "mwidth";
privatestatic final String HEIGHT = "mheight";
privatestatic final String IMAGETYPE = "JPEG";
@Override
protectedvoid doGet(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
Stringkeycode = req.getParameter(KEY);
if(keycode != null && !"".equals(keycode)) {
ServletOutputStreamstream = null;
try{
Code128Writerwriter = new Code128Writer();
intwidth=180;
intheight=60;
Stringmwidth = req.getParameter(WIDTH);
if(mwidth != null && !"".equals(mwidth.trim())) {
try{
width=Integer.valueOf(mwidth);
}catch (NumberFormatException e) {
//TODOoutput to log
}
}
Stringmheight = req.getParameter(HEIGHT);
if(mheight != null && !"".equals(mheight.trim())) {
try{
height= Integer.valueOf(mheight);
}catch (NumberFormatException e) {
//TODOoutput to log
}
}
stream= resp.getOutputStream();
BitMatrixm = writer.encode(keycode, BarcodeFormat.CODE_128, width, height);
MatrixToImageWriter.writeToStream(m,IMAGETYPE, stream);
}catch (WriterException e) {
e.printStackTrace();
}finally {
if(stream != null) {
stream.flush();
stream.close();
}
}
}
}
@Override
protectedvoid doPost(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
this.doGet(req,resp);
}
}
生成qrcode二維碼的servlet示例
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
/**
* @Description: 生成二維碼(QR格式)
* @author lwei
*/
public class BarCode2DServlet extends HttpServlet {
/**
* @Fields serialVersionUID : serialVersionUID
*/
privatestatic final long serialVersionUID = 1L;
privatestatic final String KEY = "keycode";
privatestatic final String SIZE = "msize";
privatestatic final String IMAGETYPE = "JPEG";
@Override
protectedvoid doGet(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
Stringkeycode = req.getParameter(KEY);
if(keycode != null && !"".equals(keycode)) {
ServletOutputStreamstream = null;
try{
intsize=129;
Stringmsize = req.getParameter(SIZE);
if(msize != null && !"".equals(msize.trim())) {
try{
size=Integer.valueOf(msize);
}catch (NumberFormatException e) {
//TODOoutput to log
}
}
stream= resp.getOutputStream();
QRCodeWriterwriter = new QRCodeWriter();
BitMatrixm = writer.encode(keycode, BarcodeFormat.QR_CODE, size, size);
MatrixToImageWriter.writeToStream(m,IMAGETYPE, stream);
}catch (WriterException e) {
e.printStackTrace();
}finally {
if(stream != null) {
stream.flush();
stream.close();
}
}
}
}
@Override
protectedvoid doPost(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
this.doGet(req,resp);
}
}
3、web.xml中的配置
barCode
com.XXX.XXX.common.servlet.BarCode1DServlet
barCode
/barCode
qrCode
com.XXX.XXX.common.servlet.BarCode2DServlet
qrCode
/qrCode
4、頁面引用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.