db2函数调用java的简单介绍

今天给各位分享db2函数调用java的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

1、db2存储过程写好了放在哪里让JAVA调用2、怎么用JAVA调用DB2的export3、java 连接 db24、java 连接DB2问题解决方案5、在Java中调用db2存储过程,怎样给存储过程传6、db2调用java函数

db2存储过程写好了放在哪里让JAVA调用

。。。当然是放在db2里 java也只是调用jdbc的一个函数,传递一个存储过程的名字给数据库 存储过程最终还是由数据库自己来执行的

db2函数调用java的简单介绍

怎么用JAVA调用DB2的export

Java连接DB2

今天有点好奇,就一口气在WIN7旗舰版,版本是6.1,里面装了DB2 V9.7这个版本(400M左右),然后就写了一个Java 代码来试了试,Java里连接DB2,还成功啦,拿出来和大家分享一下,期间参考了无数仁人志士的文章。

这里先说一下,DB2和JDBC驱动的问题,这个是摘来的。

解读java连接db2的四种类型

第一种:目前IBM一直都没有提供 TYPE 1的JDBC驱动程序.

第二种:类型2驱动:COM.ibm.db2.jdbc.app.DB2Driver, 该驱动也位于包 db2java.zip中,JDK必须能访问db2的db2jdbc.dll等。

用法:

Class.forName(“COM.ibm.db2.jdbc.app.DB2Driver”).newInstance();

String url = “jdbc:db2:sample”;

Connection con = DriverManager.getConnection(url, user, password);

TYPE 2 驱动使 Java 应用程序通过JDBC调用DB2.对 DB2 JDBC type 2 driver 的调用被转换成 Java 本地方法.Java 使用这种驱动程序的应用程序必须运行在一个 DB2 客户机上,JDBC 请求通过这个客户机转到 DB2 服务器.在使用 DB2 JDBC 应用程序驱动程序访问 DB2 UDB for iSeries 数据源或者 DB2 for OS/390 或 z/OS 环境中的数据源之前,必须安装 DB2 Connect Version 8.DB2 JDBC type 2 driver 支持 JDBC 1.2 规范中描述的大部分 JDBC 和 SQLJ 函数,并且支持 JDBC 2.0 规范中描述的一些函数.

第三种:类型3驱动:COM.ibm.db2.jdbc.net.DB2Driver, 该驱动位于包 db2java.zip中.

java 连接 db2

DB2有两个驱动方式, 一个是纯Java的JDBC;一个是调用DB2命令行的JDBC驱动.

db2java.zip中的COM.ibm.db2.jdbc.app.DB2Driver是后种. 你在命令行下能够运行是因为环境变量(db2profile)已经设置好了.Eclipse带起来的Java程序没有这些环境变量. COM.ibm.db2.jdbc.app.DB2Driver仅仅是DB2命令的一层封装,没有环境变量,自然找不到命令,自然连接不成功.

换成type4的JDBC driver,或者在eclipse里面设置好db2profile就可以了.

java 连接DB2问题解决方案

java连接db2的问题,大家已经都讨论过了。看到论坛里又有坛友提问,我也就自己测试总结出来,共享下.JavaSoft将JDBC驱动程序细分为四大类,就是大家经常讲的type1,或者type4等.

1.JDBC/ODBC Bridge是一项瘦编译元件,能将JDBC功能调用转换为ODBC功能调用。使用JDBC/ODBC Bridge,Java开发人员编 写的兼容JDBC的应用系统及小型应用程序,可与目前市场上任何ODBC连接解决方案一并使用。既然这种类型使用着不多,我也没有测试.

2.NativeAPI PartlyJava驱动程序主要将JDBC调用转换为指定专用数据库系统的客户机API,从而利用SQL*NET、I Connect及OpenClient分别连接到Oracle、Informix及Sybase等数据库上。使用PartlyJava驱动程序的最大优点是,可 利用企业内现有的数据库中间件。

这种方法就是本机上安装有db2客户端,并在本地已经配置好了别名数据库.使用时注意:

2.1把db2java.zip解压后,把COM下文件考到项目的当前目录下.因为注册驱动要用到的,当然还要注册db2java.jar

2.2注意数据库url要正确,因为已经在本地配置了别名数据库.格式如下jdbc:db2:sample;

String name=”COM.ibm.db2.jdbc.app.DB2Driver”;

String url=”jdbc:db2:ceshi”;

3.NetProtocol AllJava驱动程序可将JDBC调用转换成为不受任何数据库限制的网络协议,服务器可把这一网络协议编译 为数据库协议。这项JDBC解决方案只有一个单一通用的全Java驱动程序,可连接许多不同的数据库。采取哪种网络协议作为 中介,取决于JDBC驱动程序供应商。COM.ibm.db2.jdbc.net.DB2Driver

在网上参考n多资料,据说还要服务器开侦听端口,我也没能把数据库端口打开.也就没有测试.

4.NativeProtocol AllJava驱动程序是数据库专用JDBC驱动程序,可将JDBC调用转换为数据库可直接使用的网络协议,客户机因此可直接访问数据库服务器。从根本上说,NativeProtocol AllJava驱动程序能以一个纯粹本地的Java JDBC 客户机,全面取代客户机API,如SQL*NET、IConnect及OpenClient等。

这是jdbc通用数据库驱动.连接已经安装客户端的别名数据库没有问题,直接连接远程数据库也没有问题,不过需要数据库编码为GBK

4.0要把db2jcc.jar解压后的com拷贝到项目的当前目录下.因为注册驱动要用到的.当然要注册db2jcc.jar,db2jcc_license_cisuz.jar

4.1连接已经安装有客户端并配置了别名数据库的格式

String name=”com.ibm.db2.jcc.DB2Driver”;

String url=”jdbc:db2://www.easyaq.com:50000/ceshi”;

4.2直接访问服务器数据库.

如果数据库编码不对的话会报Encoding not supported”错误!建立Database时,必需选UTF-8的编码,如果选用Big5时会出现encoding not supported的错误。DB2的JDBC 只支持UTF-8的编码方式。解决方法也就是用不同的字符集创建数据库.格式同4.1

在Java中调用db2存储过程,怎样给存储过程传

JDBC调用存储过程: CallableStatement

在Java里面调用存储过程,写法那是相当的固定:

Class.forName(….

Connection conn = DriverManager.getConnection(….

/**

*p是要调用的存储过程的名字,存储过程的4个参数,用4个?号占位符代替

*其余地方写法固定

*/

CallableStatement cstmt = conn.prepareCall(“{call p(?,?,?,?)}”);

/**

*告诉JDBC,这些个参数,哪些是输出参数,输出参数的类型用java.sql.Types来指定

*下面的意思是,第3个?和第4个?是输出参数,类型是INTEGER的

*Types后面具体写什么类型,得看你的存储过程参数怎么定义的

*/

cstmt.registerOutParameter(3, Types.INTEGER);

cstmt.registerOutParameter(4, Types.INTEGER);

/**

*在我这里第1个?和第2个?是输入参数,第3个是输出参数,第4个既输入又输出

*下面是设置他们的值,第一个设为3,第二个设为4,第4个设置为5

*没设第3个,因为它是输出参数

*/

cstmt.setInt(1, 3);

cstmt.setInt(2, 4);

cstmt.setInt(4, 5);

//执行

cstmt.execute();

//把第3个参数的值当成int类型拿出来

int three = cstmt.getInt(3);

System.out.println(three);

//把第4个参数的值当成int类型拿出来

int four = cstmt.getInt(4);

System.out.println(four);

//用完别忘给人家关了,后开的先关

cstmt.close();

conn.close();

JDBC调用存储过程,掌握这一个程序足够了.

以下是上面程序使用的存储过程的代码,我用的是Oracle数据库,不过不论是什么数据库,对于你的程序,JDBC这一端写法都是一样的.

create or replace procedure p

(v_a in number,v_b number,v_ret out number,v_temp in out number)

is

begin

if(v_a v_b) then

v_ret := v_a;

else

v_ret := v_b;

end if;

v_temp := v_temp + 1;

end;

db2调用java函数

使用db2-tf的方式来调用函数,DB2是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBMi(旧称OS/400)、z/OS,以及Windows服务器版本。

关于db2函数调用java和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年4月4日 07:30:24
下一篇 2024年4月4日 07:38:37

相关推荐

  • 深入java虚拟机pdf,深入java虚拟机 中村成洋 pdf

    在linux环境下,java怎么实现从word格式转换为pdf格式 //设置当前使用的打印机,我的Adobe Distiller打印机名字为 Adobe PDF wordCom.setProperty( ActivePrinter , new Variant( Adobe PDF ));//设置printout的参数,将word文档打印为postscript…

    2024年5月23日
    4400
  • java截取指定长度字符串,java截取指定字符串之后的

    java中如何截取字符串中的指定一部分 第一个参数是开始截取的字符位置。(从0开始)第二个参数是结束字符的位置+1。(从0开始)indexof函数的作用是查找该字符串中的某个字的位置,并且返回。 int end);截取s中从begin开始至end结束时的字符串,并将其赋值给s;split讲解:java.lang.string.split split 方法 将…

    2024年5月23日
    4200
  • c语言自定义函数数组求和,c语言自定义函数调用数组

    C语言数组怎样求和, 可以通过循环遍历数组中的每个元素,并进行累加。累加的结果可以保存在变量中,需要注意,要保证变量足够保存累加结果,不会出现溢出。 先获取数组长度,然后用for循环,从数组中获取值进行累加求和。 c语言中,定义数组后可以用sizeof命令获得数组的长度(即可容纳元素个数)。但是通过传递数组名参数到子函数中,以获得数组长度是不可行的,因为在子…

    2024年5月23日
    4400
  • java绑定一个端口,java使用端口

    java如何多个service共用一个端口 你如果有多个项目的话,你可以把多个项目放到一个tomcat里面,这样端口相同使用项目名称来进行区分项目。你如果非要使用同一个,你也可以配置不同的域名导向不同的项目。就是访问的域名不同转接到的项目不同。 如果需要同时启动多个程序,要么修改tomcat的配置文件中的监听端口。要么修改jar包程序的监听端口。不能在一台服…

    2024年5月23日
    3400
  • c语言mallloc使用的简单介绍

    C语言中使用malloc必须加#includemallo.h? 1、在C语言中使用malloc函数进行动态内存分配。malloc的全称是memory allocation,中文叫动态内存分配。原型:extern void malloc(unsigned int num_bytes);功能:分配长度为num_bytes字节的内存块。 2、你可以看一下C语言那本…

    2024年5月23日
    4300
  • java多线程并发编程基础,Java多线程并发执行返回

    电脑培训分享Java并发编程:核心理论 电脑培训发现本系列会从线程间协调的方式(wait、notify、notifyAll)、Synchronized及Volatile的本质入手,详细解释JDK为我们提供的每种并发工具和底层实现机制。 人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接…

    2024年5月23日
    4600
  • javascriptcanvas的简单介绍

    如何使用js在画布上绘制图形 1、可以使用 drawImage()方法把一幅图像绘制到画布上。 以使用三种不同的参数组合。最简单的调用方式是传入一个 HTML 元素,以及绘制该图像的起点的 x 和 y 坐标。 2、效果图:使用JavaScript在画布中绘制文本图形首先我们来看看要在画布上绘制文本图形,需要用到的最重要的属性和方法:font属性:定义文本的字…

    2024年5月23日
    4100
  • 自学java找工作,自学java找工作需要包装简历吗

    自学java学多久可以找到工作 1、自学Java至少需要一年以上的时间才能达到找工作的水平。报班培训四到六个月的时间就可以找到一份不错的工作。 2、自学Java至少需要一年以上的时间才能达到找工作的水平。 3、如果要想找到一份Java相关的工作,需要至少学习5-6个月时间才能就业。Java开发需要掌握一些基础的编程语言知识,比如掌握面向对象的编程思想、基本的…

    2024年5月23日
    4200
  • cortexm4linux的简单介绍

    Cortex-M4的主要功能 Cortex-M4提供了无可比拟的功能,以将[1] 32位控制与领先的数字信号处理技术集成来满足需要很高能效级别的市场。 Cortex-M4核心具有浮点单元(FPU)单精度,支持所有Arm单精度数据处理指令和数据类型。它还实现了一套完整的DSP指令和一个提高应用程序安全性的内存保护单元(MPU)。 主要是m4比m3多了dsp的支…

    2024年5月23日
    4300
  • 3desjavaphp的简单介绍

    php的3des加密结果与java不一致 他们的加密算法都是通用的,是可以解开的,只要你des的模式,加密长度,初始向量什么的都一样就可以。 JAVA写RSA加密,私钥都是一样的,公钥每次加密的结果不一样跟对数据的padding(填充)有关。Padding(填充)属性定义元素边框与元素内容之间的空间。padding简写属性在一个声明中设置所有内边距属性。 要…

    2024年5月23日
    4600

发表回复

登录后才能评论



关注微信