文档章节

hibernate 4 执行存储过程

fengzhi714
 fengzhi714
发布于 2016/09/30 16:35
字数 170
阅读 41
收藏 1

 通过hibernate4 中doReturningWork 方法执行存储过程。示例代码中session factory 通过项目中获取,这里仅做示例用。

读取数据通过原生jdbc方式读取,不记得jdbc的可以去看看jdbc。

public void testCallProcedure() {

		// 测试数据
		int deptId = 1;
		SessionFactory sessionFactory = null;

		String sql = "{call pro_getDeptUserAndChildDeptUserListByDeptId(?)}";
		Session session = sessionFactory.getCurrentSession();

		// 通过 hibernate 4 doReturningWork 方法执行存储过程
		session.doReturningWork(new ReturningWork() {
			@Override
			public Object execute(Connection connection) throws SQLException {
				CallableStatement cs = connection.prepareCall(sql);
				cs.setInt(1, deptId);
				ResultSet rs = cs.executeQuery();

				List<Map<String, Object>> userList = new ArrayList<Map<String, Object>>();

				// 读取数据
				while (rs.next()) {
					Map<String, Object> map = new HashMap<String, Object>();

					map.put("userId", rs.getString("user_id"));

					userList.add(map);
				}

				return userList;
			}
		});

	}

 

© 著作权归作者所有

共有 人打赏支持
fengzhi714
粉丝 6
博文 49
码字总数 15971
作品 0
佛山
后端工程师
私信 提问
Hibernate调用存储过程示例(有参数,返回结果集)

1、存储过程 2、数据库客户端执行存储过程如下: 执行结果如下: 3、java代码通过hibernate调用存储过程 打印结果: FreezeMon:2017-09 meterid:0351-09768 4、hibernate取出存储过程的输出参...

ytangdigl
2017/10/26
0
0
hibernate批量修改,批量删除

在Hibernate应用中如何处理批量更新和批量删除? 批量更新是指在一个事务中更新大批量数据,批量删除是指在一个事务中删除大批量数据。以下程序直接通过Hibernate API批量更新CUSTOMERS表中年...

Kerry_Han
2013/08/30
0
0
hibernate sql 查询

Hibernate 支持使用原生的SQL查询,使用原生SQL查询可以利用某些数据库特性,原生SQL查询也支持将SQL语句放在配置文件中配置,从而提高程序的解耦,命名SQL查询还可以用于调用存储过程。 SQL查...

DaDa-da
2018/04/23
0
0
Hibernate SQL查询 addScalar()或addEntity()

Hibernate除了支持HQL查询外,还支持原生SQL查询。 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口。该接口是Query接口的子接口。 执行S...

小和尚敲代码
2016/01/29
66
0
使用SQLQuery 在Hibernate中使用sql语句

session.createSQLQuery.转载 对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口。下面来描述如何使用这个API进行查询。 最基本的SQL查询就是...

无间道
2013/03/13
0
1

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 白掌柜说了卖货不卖身

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @爱漫爱 :这是一场修行分享羽肿的单曲《Moony》 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :开不开心? 开心呀, 我又不爱睡懒觉…...

小小编辑
56分钟前
2
0
大数据教程(11.7)hadoop2.9.1平台上仓库工具hive1.2.2搭建

上一篇文章介绍了hive2.3.4的搭建,然而这个版本已经不能稳定的支持mapreduce程序。本篇博主将分享hive1.2.2工具搭建全过程。先说明:本节就直接在上一节的hadoop环境中搭建了! 一、下载apa...

em_aaron
今天
1
0
开始看《JSP&Servlet学习笔记》

1:WEB应用简介。其中1.2.1对Web容器的工作流程写得不错 2:编写Servlet。搞清楚了Java的Web目录结构,以及Web.xml的一些配置作用。特别是讲了@WebServlet标签 3:请求与响应。更细致的讲了从...

max佩恩
今天
2
0
mysql分区功能详细介绍,以及实例

一,什么是数据库分区 前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可...

吴伟祥
今天
2
0
SQL语句查询

1.1 排序 通过order by语句,可以将查询出的结果进行排序。放置在select语句的最后。 格式: SELECT * FROM 表名 ORDER BY 排序字段ASC|DESC; ASC 升序 (默认) DESC 降序 1.查询所有商品信息,...

stars永恒
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部