原生jdbc执行存储过程

 1 //定时任务,结转 .
 2     //表名    fys_sch_lvyou2 ,存储过程名:fys_sch_lvyou2_carrayover
 3         //无参调用:{call insertLine}
 4         //有参调用:{call fys_sch_lvyou2_carrayover(?,?) 然后传递参数即可
 5     public void startCarrayOver(){
 6         //获取要结转的时间:当前月(2016年09月30日)的上月,2016年08月
 7         Calendar c = Calendar.getInstance();
 8         c.add(Calendar.MONTH, -1);
 9         String syear = c.get(Calendar.YEAR)+"";
10         int month = c.get(Calendar.MONTH)+1;
11         String smonth = month<10?"0"+month:month+"";
12         System.out.println("From:"+syear+"-"+smonth);
13         //执行存储过程
14
15         TomcatDataSource tds = SpringBeanUtils.getBean("dataSourceDefault");
16         Connection conn = null;
17         CallableStatement  cs = null;
18         try {
19             conn = tds.getConnection();
20             cs = conn.prepareCall("{call carryover(?,?)}");
21             cs.setString(1, syear);
22             cs.setString(2, smonth);
23             cs.execute();
24             System.out.println("执行存储过程正常!结转成功!");
25         } catch (SQLException e) {
26             e.printStackTrace();
27         } finally {
28             try {
29                 if (cs!=null) {
30                     cs.close();
31                 }
32                 if (conn!=null) {
33                     conn.close();
34                 }
35             } catch (SQLException e) {
36                 e.printStackTrace();
37             }
38             System.out.println("资源关闭成功!");
39         }
40     }

存储过程详见:oracle函数和存储过程示例

时间: 2025-01-08 12:03:47

原生jdbc执行存储过程的相关文章

jdbc执行预处理,批处理,LOB字段处理,调用存储过程

(1)jdbc执行预处理 PreparedStatment预备语句 eg:String sql="insert into user(id,name,birthday,money) values(5,'administrator',?,'1000000')"; PreparedStatement stmt=conn.prepareStatment(sql); stmt.setTimestamp(1,new Timestamp(System.currentTimeMillis())); s

JAVA使用JDBC技术操作SqlServer数据库执行存储过程

Java使用JDBC技术操作SqlServer数据库执行存储过程: 1.新建SQLSERVER数据库:java_conn_test 2.新建表:tb_User 3.分别新建三个存储过程: 1>带参数的新增用户存储过程: CREATE PROCEDURE [dbo].[p_Insert_User] @name nvarchar(50), @UserPwd nvarchar(50) AS BEGIN INSERT INTO tb_User VALUES(NEWID(),@name,@UserPwd)

使用JDBC CallableStatements执行存储过程

使用JDBC CallableStatements执行存储过程 实验目的:掌握jdbc callableStatements 的执行过程. 实验内容:掌握jdbc callableStatements 的执行过程. 实验过程: CallableStatement的所有超级接口为PreparedStatement.Statement.Wrapper.其中继承自PreparedStatement接口.CallableStatement主要是调用数据库中的存储过程.在使用CallableStateme

使用原生JDBC方式对数据库进行操作

使用原生JDBC方式对数据库进行操作,包括六个步骤: 1.加载JDBC驱动程序 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM.可以通过java.lang.Class类的静态方法forName(String className)实现,成功加载后,会将Driver类的实例注册到DriverManager类中. 代码如下: Class.forName("com.mysql.jdbc.Driver"); Class.forName()方法内部实现包括两部分:类加载.类初始化. 1

Java中执行存储过程和函数(web基础学习笔记十四)

一.概述 如果想要执行存储过程,我们应该使用 CallableStatement 接口. CallableStatement 接口继承自PreparedStatement 接口.所以CallableStatement 接口包含有Statement 接口和PreparedStatement 接口定义的全部方法,但是并不是所有的方法我们都要使用,主要使用的方法有这样几个: CallableStatement 常用方法: 返回类型 方法签名 说明 boolean execute() 执行 SQL 语句

Java数据库连接——JDBC调用存储过程,事务管理和高级应用

阅读目录 一.JDBC常用的API深入详解及存储过程的调用1.存储过程(Stored Procedure)的介绍2.JDBC调用无参存储过程3.JDBC调用含输入参数存储过程4.JDBC调用含输出参数存储过程二.JDBC的事务管理1.JDBC实现事务管理2.通过代码实现事物的管理三.数据库连接池(dbcp.c3p0)1.dbcp使用步骤2.c3p0使用步骤3.连接池总结四.JDBC的替代产品(Hibernate.Mybatis)1.Commons-dbutils 2.Hibernate简介3.M

Java数据库连接--JDBC调用存储过程,事务管理和高级应用

相关链接:Jdbc调用存储过程 一.JDBC常用的API深入详解及存储过程的调用 1.存储过程的介绍 我们常用的操作数据库语言SQL语句在执行的时候要先进行编译,然后执行,而存储过程是在大型数据库系统中,一组为了完成特定功能的SQL语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过制定存储过程的名字并给出参数(如果该存储过程带有参数) 来执行它.存储过程是数据库中 的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程. 一个存储过程是一个可编程的函数,它在数据

JDBC调用存储过程的例子

下面是我学到了Oracle存储过程,在这里跟大家简单的分享一下利用JDBC调用存储过程的例子: 废话就不啰嗦,现在就直接上机代码. 首先我利用的是Oracle中默认的 scott 数据库里的 emp员工信息表作为本次的例子: 如果你的Oracle里没有 emp默认的员工表,需要创建类似以下的 emp表. 在PL/SQL中需要写以下的调用存储过程的代码: 1 --在初次打开PL/SQL时要运行以下这行代码 2 set serveroutput on 3 4 5 --存储过程 6 CREATE OR

jdbc调用存储过程

JDBC调用存储过程 通用JDBC连接类(简版) package com.qy.dbUtil; import java.io.IOException; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; imp