⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 idautomationservlet.java

📁 著名IDAutomation公司的JAVA条码控件源码
💻 JAVA
字号:
//*****************************************************************
//
//  JAVA Source for com.idautomation.maxicode; 4.10
//
//  Copyright, IDAutomation.com, Inc. 2000-2004.
//  All rights reserved.
//
//  http://www.IDAutomation.com/java/
//
//  NOTICE:
//  You may incorporate our Source Code in your application
//  only if you own a valid Java Developer License
//  from IDAutomation.com, Inc. and the copyright notices
//  are not removed from the source code.
//
//*****************************************************************

package com.idautomation.barcode.maxicode;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.awt.Graphics2D.*;
import java.awt.*;

import com.idautomation.barcode.encoder.GifEncoder;

	public class IDAutomationServlet  extends HttpServlet
    {


  public static void main(String[] a) {

  }

        /**
         * Handle the HTTP POST method by sending an e-mail
         *
         *
         */

	    public void init() throws ServletException  {

	    }

       // read paramters from request and create barcode
       public MaxiCode getBarcode (HttpServletRequest request) {

       	  MaxiCode cb=new MaxiCode();

          //cb.setMode(2);
          //cb.setZipCode("11111");
          //cb.setServiceClass("222");
          //cb.setCountry("333");
          //cb.setData("NO DATA ENTERED");

          if (request==null) {
             cb.setMode(4);
             cb.setData("NO DATA ENTERED");
	     return cb;
          }

          // READ DATA
          String dataStr=request.getParameter("DATA");
          if (dataStr!=null) cb.setData(dataStr);



          String mode=request.getParameter("MODE");
          if (mode!=null) {
             if (mode.compareTo("2")==0) cb.setMode(2);
             if (mode.compareTo("3")==0) cb.setMode(3);
             if (mode.compareTo("4")==0) cb.setMode(4);
             if (mode.compareTo("5")==0) cb.setMode(5);
             if (mode.compareTo("6")==0) cb.setMode(6);
          }



          // ROTATION
          String rot=request.getParameter("ROTATION");
          cb.setRotation(0);
          if (rot!=null) {
             if (rot.compareTo("90")==0) cb.setRotation(90);
             if (rot.compareTo("180")==0) cb.setRotation(180);
             if (rot.compareTo("270")==0) cb.setRotation(270);

          }

          // RESOLUTION
          String res=request.getParameter("RESOLUTION");
          if (res!=null) {
             int resInt=0;
             try {
               resInt=Integer.parseInt(res);
             } catch (Exception e) {};

             if ((resInt>=72) && (resInt<=600)) cb.setResolution(resInt);

          }

          // READ PRIMARY MESSAGE DATA
          String PC=request.getParameter("POSTALCODE");
          if (PC!=null) cb.setZipCode(PC);

          String Service=request.getParameter("SERVICE");
          if (Service!=null) cb.setServiceClass(Service);

          String country=request.getParameter("COUNTRY");
          if (country!=null) cb.setCountry(country);

          // STRUCTURED APPEND DATA
          String symbols=request.getParameter("NUMBER");
          if (symbols!=null) {
             if (symbols.compareTo("2")==0) cb.setNumberOfCodes(2);
             if (symbols.compareTo("3")==0) cb.setNumberOfCodes(3);
             if (symbols.compareTo("4")==0) cb.setNumberOfCodes(4);
             if (symbols.compareTo("5")==0) cb.setNumberOfCodes(5);
             if (symbols.compareTo("6")==0) cb.setNumberOfCodes(6);
             if (symbols.compareTo("7")==0) cb.setNumberOfCodes(7);
             if (symbols.compareTo("8")==0) cb.setNumberOfCodes(8);
          }

          String symbol=request.getParameter("POSITION");
          if (symbol!=null) {
             if (symbol.compareTo("2")==0) cb.setPositionOfCode(2);
             if (symbol.compareTo("3")==0) cb.setPositionOfCode(3);
             if (symbol.compareTo("4")==0) cb.setPositionOfCode(4);
             if (symbol.compareTo("5")==0) cb.setPositionOfCode(5);
             if (symbol.compareTo("6")==0) cb.setPositionOfCode(6);
             if (symbol.compareTo("7")==0) cb.setPositionOfCode(7);
             if (symbol.compareTo("8")==0) cb.setPositionOfCode(8);

          }

          return cb;


       }

       // Handle a request
       // 1. create barcode
       // 2. draw barcode in a Buffered Image
       // 3. encode image as GIF or JPEG and send it to the browser
        public void doGet (HttpServletRequest request,
                	   HttpServletResponse response)
        throws ServletException, IOException
        {
			PrintWriter		out;
			ServletOutputStream outb;

			//default encoding type
			String encode="jpeg";
			if (request!=null)
			{
				if (request.getParameter("FORMAT")!=null)  encode=request.getParameter("FORMAT").toLowerCase();
				if (encode.compareTo("gif")!=0) encode="jpeg";
			}
			response.setContentType("image/"+encode);
			outb=response.getOutputStream();

			// avoid caching in browser
			response.setHeader ("Pragma", "no-cache");
			response.setHeader ("Cache-Control", "no-cache");
			response.setDateHeader ("Expires",0);

			// get BarCode
			MaxiCode cb=getBarcode(request);

		try { // Create buffer

			java.awt.image.BufferedImage BarImage=new java.awt.image.BufferedImage(cb.getPreferredSize().width,cb.getPreferredSize().height,java.awt.image.BufferedImage.TYPE_INT_RGB);
			java.awt.Graphics2D BarGraphics=BarImage.createGraphics();
			cb.setSize(cb.getPreferredSize());
			cb.paint(BarGraphics);

			if (encode.compareToIgnoreCase("gif")==0)
			{
				// encode buffered image to a gif
				GifEncoder encoder = new GifEncoder(BarImage  ,outb);
				encoder.encode();
			}
			else
			{
				// create JPEG image
				com.sun.image.codec.jpeg.JPEGImageEncoder encoder = com.sun.image.codec.jpeg.JPEGCodec.createJPEGEncoder(outb );
				//increase the JPEG quality to 100%
				com.sun.image.codec.jpeg.JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam( BarImage);
				param.setQuality(1.0F,true);
				encoder.setJPEGEncodeParam(param);
				encoder.encode( BarImage,param  );
			}


		} catch (Exception e) { e.printStackTrace();}

               //outb.close();

		}


        public void doPost (HttpServletRequest request,
                	   HttpServletResponse response)
        throws ServletException
        {
        try {
            doGet(request,response);
            } catch (Exception e) { e.printStackTrace();}
	}

    }


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -