Java Opensources for Web Development Part I:
嘗試使用來自 Opensource 的小工具(1)
Lession 7 : 列印出具有條碼的繳費單
在這個沒有真正安全的網路時代,有些人會擔心線上刷卡的風險,所以提供交易的廠商,往往需要多種通路的繳費機制,無論是讓便利商店、銀行或是郵局等代收機構,都會需要利用條碼來確認相關的金額與提供必要的資訊,以方便對帳與銷帳等機制。
然而,在開發繳費機制的系統,列印出表格和動態內容應該都不是難事,而是會思考該如何製作條碼的圖檔,所幸在 Java Opensources 之中,有許多條碼製作的元件。例如 * Barbecue,
* Krysalis 的 barcode4j,
* iText 也有 Barcode 的模組
我通常是利用 Barbecue 便可以製作出國內常用的條碼機制,將 Barbecue 的 jar ( barbecue-.jar ) 與 jdom.jar,放到 /WEB-INF/lib/ 之下。接著在 web.xml 之中加入設定 /barcode 對應到 BarcodeServlet。
<servlet-name>net.sourceforge.barbecue.BarcodeServlet</servlet-name>
<display-name>Barbecue</display-name>
<description>Barbecue - Java barcode generator</description>
<servlet-class>
net.sourceforge.barbecue.BarcodeServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>
net.sourceforge.barbecue.BarcodeServlet
</servlet-name>
<url-pattern>/barcode</url-pattern>
</servlet-mapping>
接著,只要使用 <img src="<%=request.getContextPath%>/barcode?type=Code39&data=123456789&height=22&width=1"> 產生特有的編碼方式與資料內容,當然,你也要知道應該輸出的高與寬。就可以產生出一個 PNG 的圖檔顯示在你的頁面之中。
或是你想要在 Desktop Application 或 Servlet 直接產生出條碼,也可以利用:
Barcode barcode = BarcodeFactory.createCode39(“123456789”, true);
// Graphics2D and 顯示點 ( x, y )
barcode.draw(Graphics2D g, x, y, 1, 22 );
// 或是利用BarcodeImageHandler 作各類的輸出,包括 gif, jpeg, png 等
BarcodeImageHandler.saveJPEG(barcode, new File(“barcode.jpg”);
Comments