http://www.swetake.com/qrcode/java/qr_java.html

qrcode_java0.50beta10.tar

[root@ebs12vis ~]# su - applmgr

[applmgr@ebs12vis ~]$ cd $JAVA_BASE

[applmgr@ebs12vis java]$ pwd

/d01/applmgr/VIS/apps/apps_st/comn/java

[applmgr@ebs12vis java]$ ll

total 24

drwxr-xr-x  25 applmgr dba 12288 Jan 12 12:41 classes

drwxr-xr-x   2 applmgr dba  4096 Jan 11 16:45 lib

[applmgr@ebs12vis java]$ mkdir $JAVA_BASE/com

[applmgr@ebs12vis java]$ chmod 777 $JAVA_BASE/com

[applmgr@ebs12vis java]$ cd $JAVA_BASE/com

[applmgr@ebs12vis com]$ pwd

/d01/applmgr/VIS/apps/apps_st/comn/java/com

[applmgr@ebs12vis com]$ ll

total 996

-rw-r--r--  1 root root 1010702 Jun 12 15:23 qrcode_java0.50beta10.tar.gz

[applmgr@ebs12vis com]$ tar -zxvf qrcode_java0.50beta10.tar.gz

qrcode_java0.50beta10/

qrcode_java0.50beta10/docs/

qrcode_java0.50beta10/docs/constant-values.html

qrcode_java0.50beta10/docs/overview-tree.html

qrcode_java0.50beta10/docs/index-all.html

qrcode_java0.50beta10/docs/deprecated-list.html

qrcode_java0.50beta10/docs/allclasses-frame.html

qrcode_java0.50beta10/docs/allclasses-noframe.html

qrcode_java0.50beta10/docs/index.html

qrcode_java0.50beta10/docs/packages.html

qrcode_java0.50beta10/docs/com/

qrcode_java0.50beta10/docs/com/swetake/

qrcode_java0.50beta10/docs/com/swetake/util/

qrcode_java0.50beta10/docs/com/swetake/util/package-frame.html

qrcode_java0.50beta10/docs/com/swetake/util/package-summary.html

qrcode_java0.50beta10/docs/com/swetake/util/package-tree.html

qrcode_java0.50beta10/docs/com/swetake/util/Qrcode.html

qrcode_java0.50beta10/docs/package-list

qrcode_java0.50beta10/docs/help-doc.html

qrcode_java0.50beta10/docs/stylesheet.css

qrcode_java0.50beta10/lib/

qrcode_java0.50beta10/lib/Qrcode.jar

qrcode_java0.50beta10/README.txt

qrcode_java0.50beta10/samples/

qrcode_java0.50beta10/samples/QrAppletSample.java

qrcode_java0.50beta10/samples/QrAppletSample.html

qrcode_java0.50beta10/samples/sample.java

qrcode_java0.50beta10/samples/QrAppletSample.jar

qrcode_java0.50beta10/src/

qrcode_java0.50beta10/src/com/

qrcode_java0.50beta10/src/com/swetake/

qrcode_java0.50beta10/src/com/swetake/util/

qrcode_java0.50beta10/src/com/swetake/util/qrcode_data/

qrcode_java0.50beta10/src/com/swetake/util/Qrcode.java

[applmgr@ebs12vis com]$ cp $JAVA_BASE/com/qrcode_java0.50beta10/lib/Qrcode.jar $JAVA_BASE/com

SELECT *

FROM DBA_REGISTRY

WHERE COMP_ID = 'JAVAVM';

If not exists execute $ORACLE_HOME/javavm/install/initjvm.sql

[applmgr@ebs12vis com]$ loadjava -u apps/apps@VIS -r -v -f -genmissing -s -grant public $JAVA_BASE/com/Qrcode.jar

SELECT *

FROM DBA_OBJECTS X

WHERE 1=1

AND X.OBJECT_TYPE LIKE 'JAVA%'

AND UPPER(X.OBJECT_NAME) LIKE '%QRCODE%';

/var/tmp/qrcode

CREATE OR REPLACE AND COMPILE  JAVA SOURCE NAMED QRCodeEncoder

AS import java.awt.image.BufferedImage;

import java.awt.Color;

import java.awt.Graphics2D;

import java.awt.image.BufferedImage;

import java.io.File;

import javax.imageio.ImageIO;

import com.swetake.util.Qrcode;

/**

* 二维码生成器

*/

public class QRCodeEncoder {

/**

* 生成二维码(QRCode)图片

*

* @param content

* @param imgPath

*/

public void encoderQRCode(String content, String imgPath) {

try {

Qrcode qrcodeHandler = new Qrcode();

qrcodeHandler.setQrcodeErrorCorrect('M');

qrcodeHandler.setQrcodeEncodeMode('B');

qrcodeHandler.setQrcodeVersion(7);

System.out.println(content);

byte[] contentBytes = content.getBytes("gb2312");

BufferedImage bufImg = new BufferedImage(140, 140,

BufferedImage.TYPE_INT_RGB);

Graphics2D gs = bufImg.createGraphics();

gs.setBackground(Color.WHITE);

gs.clearRect(0, 0, 140, 140);

// 设定图像颜色 > BLACK

gs.setColor(Color.BLACK);

// 设置偏移量 不设置可能导致解析出错

int pixoff = 2;

// 输出内容 > 二维码

if (contentBytes.length > 0 && contentBytes.length < 120) {

boolean[][] codeOut = qrcodeHandler.calQrcode(contentBytes);

for (int i = 0; i < codeOut.length; i++) {

for (int j = 0; j < codeOut.length; j++) {

if (codeOut[j][i]) {

gs.fillRect(j * 3 + pixoff, i * 3 + pixoff, 3, 3);

}

}

}

} else {

System.err.println("QRCode content bytes length = "

+ contentBytes.length + " not in [ 0,120 ]. ");

}

gs.dispose();

bufImg.flush();

File imgFile = new File(imgPath);

// 生成二维码QRCode图片

ImageIO.write(bufImg, "png", imgFile);

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* @param args

*            the command line arguments

*/

public static void main(String[] args) {

String imgPath = "/var/tmp/qrcode/QRCode.png";

String content = "Oracle EBS Repository,你好,世界";

QRCodeEncoder handler = new QRCodeEncoder();

handler.encoderQRCode(content, imgPath);

System.out.println("encoder QRcode success");

}

}

CREATE OR REPLACE PROCEDURE cux_get_qrcode

AS

LANGUAGE JAVA

NAME 'QRCodeEncoder.main(java.lang.String[])' ;

set serveroutput on

call dbms_java.set_output(5000);

execute cux_get_qrcode;

EBS QRCODE的更多相关文章

  1. Deploying JAR Package & JSP Page in EBS R12.2.4 WLS

    https://pan.baidu.com/s/1OomyeLdbGWxTtCKVcweo0w # Uninstall JAR JSP QRCODE 1.# 查找QRCODE相关文件位置 [root@ ...

  2. 免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)

    在生活中有一种东西几乎已经快要成为我们的另一个电子”身份证“,那就是二维码.无论是在软件开发的过程中,还是在普通用户的日常中,几乎都离不开二维码.二维码 (dimensional barcode) , ...

  3. BPM与 SAP & Oracle EBS集成解决方案分享

    一.需求分析 SAP和Oracle EBS都是作为全球顶级的的ERP产 品,得到了众多客户的青睐.然而由于系统庞大.价格昂贵以及定位不同,客户在实施过程中经常会面临以下困惑: 1.SAP如何实现&qu ...

  4. 使用jquery.qrcode生成二维码(转)

    jQuery 的 qrcode 插件就可以在浏览器端生成二维码图片. 这个插件的使用非常简单: 1.首先在页面中加入jquery库文件和qrcode插件. <script type=" ...

  5. 动态生成二维码插件 jquery.qrcode.js

    前段时间做项目,需要动态生成一个二维码,于是就在网上找了一下发现一个jquery插件jquery.qrcode.js,所以今天就简单说一下这个插件的使用: jquery.qrcode.js是依赖jqu ...

  6. qrcode 生成验证码带文字

    /** * 生成二维码 * * @param int $id * @param string $file * @param boolean $is_download */public function ...

  7. 解决EBS中JAR包冲突的问题

    同事解决的,摘抄上来备用. 问题描述:在OAF里调用ESB的服务报错如下: Error Page   Exception Details.    oracle.apps.fnd.framework.O ...

  8. EBS中利用Socket与外系统通信

    某银行要求做一个签到签退功能,日终EBS系统发送报文与核心系统对帐,规定利用Socket来做传送,记录下步骤: 1.编辑: $INST_TOP/ora/10.1.3/j2ee/oacore/appli ...

  9. Oracle EBS R12的启停脚本

    以下脚本用root用户登录执行: 一.DB启停使用EBS提供的脚本ebs_start.shsu - oraprod -c "/d01/oracle/PROD/db/tech_st/10.2. ...

随机推荐

  1. bootgrid 刷新保持当前排序

    1. 前言 主要是利用了HTHNL5的localStorage技术和用ajax传输一个数组到后台并进行判断.这篇文章是解决一个小需求而来的,主要是用来记录. 2. 代码 JavaScript: var ...

  2. HTTP协议 (1)

    HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议. HTT ...

  3. web----框架基础

    Web框架本质: 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 真实开发中的python web程序来说,一般会分为两部分:服务器 ...

  4. python+selenium六:等待相关

    显式等待(sleep): 固定的等待(死等),不管页面有没有加载完,都等设置的时间过了再做下一步操作 隐式等待 全局生效,只写一次即可(仅当前页面),缺点:如果页面一直转圈,如:js出错将等待到所设置 ...

  5. Redis、RabbitMQ、Memcached

    知识目录: Memcached Redis RabbitMQ Memcached 回到顶部 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中 ...

  6. hive遇到FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask错误

    hive遇到FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask错误 起因 ...

  7. 【C++】拷贝构造函数(深拷贝,浅拷贝)详解

    一.什么是拷贝构造函数  首先对于普通类型的对象来说,它们之间的复制是很简单的,例如: ; int b = a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量. 下面看一个类对 ...

  8. Python 可命名元祖

    import collections MytupleClass = collections.namedtuple('MytupleClass',['x','y','z']) obj = Mytuple ...

  9. HTML页面滚动时获取离页面顶部的距离2种实现方法

    获取离滚动页面的顶部距离有两种方法一是DOM:而是jquery,具体的实现如下,感兴趣的朋友可以尝试操作下     方法一:DOM 复制代码 代码如下: <script> window.o ...

  10. 连连看 (BFS)

    难点在于判断转弯小于两次  这个还好 主要是   走过的路还能再走 但是去掉标记数组会超时 *******所以用     v.step<=f[v.x][v.y]即可!!!  这个思想非常重用!! ...