存储过程中经常需要返回结果集。 MySQL 中直接用 select 即可返回结果集。而 Oracle 则需要使用游标来返回结果集。这一点 MySQL
存储过程中经常需要返回结果集。 mysql 中直接用 select 即可返回结果集。而 oracle 则需要使用游标来返回结果集。这一点 mysql 相对比较方便,如下代码即可实现输出结果集:
存储过程定义:
DELIMITER $$
DROP procedure IF EXISTS pro_sql_data1 $$
CREATE procedure pro_sql_data1(in sear_name varchar(2000))
BEGIN
if sear_name is not null and sear_name!='' then
select id,name,date_format(create_time,'%Y-%m-%d') as repDate from ad_place where
name like concat('%',sear_name,'%');
ELSE
select id,name,date_format(create_time,'%Y-%m-%d') as repDate from ad_place;
end if;
END$$
DELIMITER;
执行结果:

在mybatis中调用存储过程,然后获取该结果集:
1、xml配置文件
Java代码
public String query(String param) throws Exception {
logger.info(param);
Map queryMap = new HashMap();
queryMap.put("obj", param);
//List
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录。有需要的朋友可以下载看看
1
注:有上面可知,mysql存储过程中可以直接使用select语句返回结果集,,而且mybatis可以直接使用list接收这个结果集(无需游标)。
MyBatis入门学习教程
Java实战应用:Mybatis实现单表的增删改
[Java][Mybatis]物理分页实现
Mybatis快速入门教程
Mybatis的关于批量数据操作的测试
Mybatis中对List
MyBatis 的详细介绍:请点这里
MyBatis 的下载地址:请点这里
本文永久更新链接地址:
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号