java连接oracle数据库调用存储过程实现分页查询(emp为例)

Java中通过jdbc调用oracle存储过程 Java调用Oracle存储过程步骤主要分为三类: (1)编写Oracle存储过程 (2)编写数据库获取连接工具类 (3)编写简单应用调用存储过程 1、Oracle中的存储过程程序 1.在Oracle SQL Developer中创建存储过程 在scott数据库用户中新建一个存储过程(查询某个员工姓名 月薪和职位): create or replace procedure query... 阅读详情

第一步:建一个含游标类型的包

sql>create or replace package testPackage

      as type test_cursor is ref cursor;    --定义名为test_cursor 的游标

      end testPackage;

第二步:编写分页的存储过程

sql>create or replace procedure fenYe(

      tableName in varchar2,--表名

      pageSize in number,--每页显示的记录数

      pageNow in number,--当前页

      myRows out number,--总记录数

      myPageCount out number,--总页数

      P_cursor out testPackage.test_cursor--返回的记录集

      ) is

      --定义部分 sql语句字符串,以及两个变量

      v_sql varchar(1000);

      v_begin number:=(pageNow-1)*pageSize+1;

      v_end number:=pageSize*pageNow;

      --执行部分

      begin

      v_sql:='select * from (select a1.*,rownum rn from (select * from '||tableName||') a1 where

      rownum<='||v_end||') where rn>='||v_begin;

      open P_cursor for v_sql;  --游标关联sql

      v_sql:='select count (*) from '||tableName;

      execute immediate v_sql into myRows;

      if mod(myRows,pageSize)=0 then

      myPageCount:=myRows/pageSize;

      else

      myPageCount:=myRows/pageSize+1;

      end if;

      close P_cursor;

      end;

      /

第三步 java调用该过程  记得引进jar 包

import java.sql.*;

public class fenYe {

public static void main(String [] args){

try{

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORCL","scott","tiger");  // ORCL 位数据库名

CallableStatement cs=ct.prepareCall("{call fenYe(?,?,?,?,?,?)}");

//给?赋值

cs.setString(1,"emp");

cs.setInt(2,5);//每页显示5行

cs.setInt(3,2);// 显示第二页

// 注册返回值

cs.registerOutParameter(4,oracle.jdbc.OracleTypes.INTEGER);

cs.registerOutParameter(5,oracle.jdbc.OracleTypes.INTEGER);

cs.registerOutParameter(6,oracle.jdbc.OracleTypes.CURSOR);

cs.execute();//执行

int rowNum=cs.getInt(4);

int pageCount=cs.getInt(5);

ResultSet rs=(ResultSet)cs.getObject(6);

System.out.println("rowNum"+rowNum);

System.out.println("总页数:"+pageCount);

while(rs.next()){

System.out.println("编号:"+rs.getInt(1)+"名字:"+rs.getString(2));}

}catch(Exception e){

e.printStackTrace();}

}

}

java中mysql和oracle数据库通用分页功能实现完整Demo 开发环境:SpringBoot+SSM,同样适合SpringBoot,具备一定Maven项目基础初学者,详细说明地址http://blog.youkuaiyun.com/fjekin/article/details/75541573 立即下载

相关推荐

使用jdbc_oracle实现的分页功能

使用jdbc数据库连接池与oracle实现的分页功能,包含一个表的增删改功能

Oracle分页存储过程

话不多说,分页存储过程如下:CREATE OR REPLACE PROCEDURE "GETRECORDFROMPAGE" ( p_colunmName in varchar2, --列名 p_tableName

JavaEE高级工程师的专栏 845

oracle-jdbc分页实现(只需传入sql语句即可实现分页)

这是一个已经封装好的分页,拿来就可以用,具体细节参考说明。觉得不错要分享啊

oracle存储过程实现分页功能(超详细)

1.实现分页的基础原理 declare v_size number(2):=5;--每页显示5条 v_page number(2):=1;--当前的页码 begin select * from ( select t.*,rownum r from ( select * from emp order by empno ) t where rownum<=(v_size*v_page)) where r>(v_page-1)*v_size; end;

qq_48033003的博客 1413

oracle存储过程通用分页

NULL 博文链接:https://zhaoshijie.iteye.com/blog/1271053

oracle 存储过程分页示例

NULL 博文链接:https://jsufly.iteye.com/blog/646683

Oracle通用分页存储过程

1.创建Oracle包的定义。使用 REF CURSOR 数据类型来处理 Oracle 结果集。REF CURSOR 是一个指向 PL/SQL 查询所返回的结果集的指针。与普通的游标不同,REF CURSOR 是一个变量,它是对游标的引用,可以在执行时将其设置为指向不同的结果集。使用 REF CURSOR 输出参数可以将 Oracle 结构化程序的结果集传递回调用应用程序。通过在调用应用程序中定义...

xiaomai4343的博客 261

手把手教你用支付宝密钥工具生成RSA2密钥对(含Windows/Mac操作截图)

本文详细介绍了如何使用支付宝密钥工具生成RSA2密钥对,包括Windows和Mac平台的操作步骤与截图。从工具下载、安装到密钥生成、配置支付宝平台,再到开发环境集成实战,手把手教你完成支付宝支付接口对接。特别强调密钥安全管理和最佳实践,帮助开发者避免常见安全隐患。

mongodb5scout的博客 257

oracle实现分页的存储过程

  第一步:创建包及其游标 代码如下: Code: ----建包及创建游标--------      CREATE OR REPLACE PACKAGE sp_package_page AS    TYPE pages_cursor IS REF CURSOR;   END;      -

vincent_noveltly的专栏 427

光储微电网混合储能系统的控制策略

随着社会生产力的不断提高,对不可再生资源的大量消耗,人们已经意识到发展可再生能源的重要性,因此微电网技术作为再生能源利用的有效形式被快速发展。蓄电池容量无限大是传统光储微电网混合储能系统控制策略一种理想形式,但实际上蓄电池的容量是有限度的,传统控制策略在蓄电池剩余电量达到阖值时将无法正常使用,由此提出了光储微电网混合储能系统的新型控制策略,又结合实际情况,对开关进行了改进,利用开关与二极管并联,使其拥有四种工作状态,当储能元件剩余电量达到阈值时,可自动恢复电量降低成本,提高并输出电池电能质量。

nhkg888的博客 1742

sentaurus学习笔记(VDMOS仿真)(三)

在Sentaurus中,这通常意味着在2D仿真中,x轴指向下,y轴指向右。定义了在2D模拟中,网格尺寸按照一定的增长率进行扩展,这里的增长率为2.0,意味着远离最小尺寸区域的网格单元大小将是最小尺寸的两倍。定义了2D模拟中网格单元的最小尺寸为0.001微米,这有助于控制网格的最小大小,从而影响仿真的精度和计算成本。表示启用中等级别的日志信息输出,这有助于用户了解仿真过程中发生的事件和可能的问题。表示启用保存调试文件,这可以帮助用户在仿真过程中检查和验证模型的状态。这行代码设置了仿真过程中使用的线程数。

qq_52640792的博客 1807

oracle数据库用java做分页,java连接oracle数据库调用存储过程实现分页查询(emp为例)...

第一步:建一个含游标类型的包sql>create or replace package testPackageas type test_cursor is ref cursor; --定义名为test_cursor 的游标end testPackage;第二步:编写分页的存储过程sql>create or replace procedure fenYe(tableName in ...

weixin_33609654的博客 421

QGIS三维地形可视化实战:从DEM数据到炫酷3D场景(附Qgis2threejs插件配置)

本文详细介绍了如何利用QGIS和Qgis2threejs插件,将DEM数据转化为交互式三维地形场景的完整工作流。核心内容包括DEM数据准备、坐标系选择(重点对比WGS 84与UTM的差异及影响)、插件核心参数配置、卫星影像与等高线叠加等进阶技巧,并提供了成果导出与常见问题解决方案,帮助用户高效创建可用于网页展示的炫酷3D可视化成果。

mqtt6iot的博客 875

IDEA连接Oracle数据库并调用存储过程

public class jdbcTest { String driver = "oracle.jdbc.driver.OracleDriver"; String url = "jdbc:oracle:thin:@192.168.238.130:1521:orcl"; String username = "scott"; String password = "tiger"; /** * * jdbc连接Oracle数据库,并对emp表进行查询操作

S_Sinsoledad的博客 3671

保姆级教程:在RK3568开发板上手把手配置RMII百兆以太网DTS节点

本文提供了一份详细的RK3568开发板RMII百兆以太网DTS节点配置教程,涵盖基础概念解析、关键参数设置、实际操作步骤及常见问题排查。通过手把手指导,帮助开发者快速完成RK3568开发板的以太网配置,特别适合嵌入式系统开发者参考。

weixin_33686714的博客 137

【STM32CubeIDE入门】(一)工程创建&工程配置

​写在前面:如果是刚接触stm32cubeide的同学推荐与这一篇文章共同阅读,能够更加快速认识上手stm32cubeide。 1、打开stm32cubeide,选择好工作目录进入主界面后,点击创建工程。

涛涛子的博客 1万+

Java 调用 Oracle 的存储过程

文章目录一、环境准备二、Oracle连接测试三、Java 调用存储过程四、Java 调用存储函数 一、环境准备 需要的 jar 包:ojdbc14.jar,ojdbc6.jar 对应的 pom 配置: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</mave

南淮北安的博客 2450

DA14531-蓝牙温度传感器-真实案例

传感器低功耗系统功能需求: 1)平时为关机状态,通过GPIO管脚唤醒,霍尔器件触发拉低IO唤醒系统。 2)唤醒后,进入BLE广播状态,等待主机连接,若一分钟无被主机连接,则进入关机状态。 3)连接后(0.1mA),每秒上报一次温度值,同时主机可以读取设备读电池电量。 4)连接断开后,1分钟后,设备进入关机(1uA)。 5)LED灯在连接时点亮,断开灭,低电量时会闪,提示闪烁。

hejinwu1314的博客 857

基于oracle数据库存储过程的创建及调用

基于oracle数据库存储过程的创建及调用 教学大纲: PLSQL编程:Hello World、程序结构、变量、流程控制、游标. 存储过程:概念、无参存储、有参存储(输入、输出). JAVA调用存储存储过程. 1. PLSQL编程 1.1. 概念和目的 什么是PL/SQL? PL/SQL(Procedure Language/SQL) PLSQL是Oracle对sql语言的过...

黑马程序员官方博客 5041

ISO 21434汽车网络安全标准深度解读系列(十):标准实施总结与展望

ISO21434标准深度解读系列总结篇系统回顾了汽车网络安全标准的核心内容与实施要点。文章梳理了10篇系列文章的结构体系,提炼出标准的三大核心价值:系统性方法(全生命周期覆盖、多层次管理)、风险导向理念(威胁驱动、动态管理)和供应链协同机制。总结了实施经验中的关键要素,包括高层承诺、专业团队建设,并提出了分阶段实施路径建议。同时分析了当前面临的技术挑战(系统复杂性、新兴技术)和管理挑战(文化转变、资源投入)。最后展望了AI应用、零信任架构等技术发展趋势,以及标准未来的演进方向,为企业实施提供战略与执行层面的

VehSwHwDeveloper的博客 559

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Java如何连接Oracle数据库

首先导入oracle驱动包。驱动包一般在你安装的oracle里跟network同级的jdbc文件夹下的lib文件夹里面。复制过来就行。 1.导包 首先我们导入java.sql.* import java.sql.*; 2.驱动注册 Class.forName("oracle.jdbc.driver.OracleDriver"); 3.驱动管理器根据注册驱动获取对应的连接。Java和oracle连接,获取连接对象 Stri...

tanxinji的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

【亲测】Java调用Oracle存储过程和存储函数

Java连接Oracle数据库存储过程和存储函数

欢迎你的到来,我们一起加油!!! 3677

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

如何实现Oracle中的分页查询

在java中如何实现动态分页查询

振藩兄的博客 4416

Java调用Oracle存储过程

Java调用Oracle存储过程

Shipley_Leo的博客 1497
上一篇: javaEE版eclipse设置默认编码格式为utf-8
下一篇: servlet名称已经存在怎么办?
DarlingRay
博客等级 码龄8年 7粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值