Java Web基础入门第五十四讲 使用JDBC调用存储过程
发布日期:2021-06-30 17:58:18 浏览次数:2 分类:技术文章

本文共 1216 字,大约阅读时间需要 4 分钟。

存储过程相当于数据库中的函数或方法。下面我会举例来说明如何使用JDBC调用存储过程。

首先,编写存储过程(参看MySQL文档)。
在这里插入图片描述
然后,得到CallableStatement对象,并调用存储过程。

package cn.liayun.demo;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Types;import cn.liayun.utils.JdbcUtils;public class Demo5 {
/** * 调用存储过程 * @param args * @throws SQLException */ public static void main(String[] args) throws SQLException {
Connection conn = null; CallableStatement st = null; ResultSet rs = null; try {
conn = JdbcUtils.getConnection(); // 得到CallableStatement,并调用存储过程 st = conn.prepareCall("{call demoSp(?,?)}"); // 设置参数,注册返回值,得到输出 st.setString(1, "liayun"); st.registerOutParameter(2, Types.VARCHAR);// 告诉MySQL驱动输出的是什么类型,即数据库的类型,Types类中有所有数据库的常见类型。 st.execute();//执行存储过程 System.out.println(st.getString(2)); } finally {
JdbcUtils.release(conn, st, rs); } }}

最后,运行以上程序,Eclipse控制台打印如下内容:

在这里插入图片描述
既然我们学了存储过程,那么将来对数据进行处理就有2种选择了。

  1. 在数据库里面写存储过程,对数据进行处理,然后在Java程序里面直接调用存储过程,获取到处理完后的数据,直接显示即可;
  2. 不在数据库里面写存储过程,通过JDBC获取数据库中的数据,获取到了之后拿到程序里面写方法来处理,处理完后再显示。

什么情况下我们需要在数据库里面写存储过程来处理数据呢?银行的数据处理一般用存储过程来实现。银行那些业务都是写好存储过程后给你,你去调用存储过程即可。在金融证劵领域用到的特别多,金融证劵领域的开发是不会用Hibernate框架的,因为表结构不会对开发人员公开。

转载地址:https://liayun.blog.csdn.net/article/details/52304479 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Java Web基础入门第七十讲 Filter(过滤器)——初识过滤器
下一篇:Java Web基础入门第五十三讲 获得MySQL数据库自动生成的主键

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月26日 11时14分53秒