mysql 存储过程调用 mybatis/hibernate
创建mysql存储过程:
1 CREATE PROCEDURE `findEmpById`(IN id INTEGER(11),OUT count INT) 2 begin 3 select COUNT(*) INTO count from emp where empId=id; 4 end;
//in 输入
//out 输出
//into 昵称
hibernate调用方式
1 package com.test; 2 3 import java.sql.CallableStatement; 4 import java.sql.Connection; 5 import java.sql.ResultSet; 6 import java.sql.SQLException; 7 8 import org.hibernate.Session; 9 import org.hibernate.SessionFactory; 10 import org.hibernate.cfg.Configuration; 11 12 13 public class 调用存储过程 { 14 15 /** 16 * @param args 17 * @throws SQLException 18 */ 19 public static void main(String[] args) throws SQLException { 20 Configuration cfg = new Configuration().configure(); 21 SessionFactory factory = cfg.buildSessionFactory(); 22 Session session = factory.openSession(); 23 Connection con = session.connection(); 24 String sql = "{call findEmpById(?)}"; 25 CallableStatement cs = con.prepareCall(sql); 26 cs.setObject(1, 2); 27 ResultSet rs = cs.executeQuery(); 28 while(rs.next()){ 29 int id = rs.getInt("empId"); 30 String name = rs.getString("empName"); 31 System.out.println(id+"\t"+name); 32 } 33 } 34 35 }
Mybatis调用MySQL存储过程
<mapper>
<select id="count" parameterType="emp" useCache="false" statementType="CALLABLE">
<![CDATA[
call findEmpById(
#{deviceCount,mode=OUT,jdbcType=INTEGER});
]]>
</select>
</mapper>
call findEmpById()
drop procedure findEmpById//
show procedure status
show create procedure findEmpById
mysql 存储过程调用 mybatis/hibernate相关推荐
- Mysql存储过程调用
项目结构: 准备数据 CREATE TABLE `demo_entity` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `name` varchar( ...
- MySQL 存储过程调用存储过程
1.创建两个存储过程 CREATE DEFINER=root@localhost PROCEDURE coun_add() begin update counter set coun=coun+1; ...
- mysql 存储过程调用权限消失的问题,恢复权限
应用程序报错:DBException: User does not have access to metadata required to determine stored procedure par ...
- mysql 存储过程创建以及调用
mysql创建存储过程详解 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据 ...
- mysql 存储过程 out 用处_mysql存储过程 OUT or INOUT argument 3 for routine
mysql存储过程出现: OUT or INOUT argument 3 for routine gotask.UserLogin is not a variable or NEW pseudo-va ...
- Oracle与Mysql存储过程区别
总结一下oracle和mysql的存储过程的几种区别: 1.创建存储过程语句不同 2.创建函数语句不同 3.传入参数写法不同 4.包的声明方式 5.存储过程返回语句不同 6.存储过程异常处理不同 7. ...
- hibernate mysql 存储过程_hibernate调用mysql存储过程
hibernate调用mysql存储过程 在最近的项目中,碰到一小段数据库数据分析的程序,需要结合多张表联合查询或涉及到子查询,项目主要采用的java ee开发,使用了hibernate框架,由于这些 ...
- mybatis mysql 存储过程_Mysql 存储过程+Mybatis调用实现插入操作例子 | 学步园
一. 简介:网上关于存储过程的使用有很多的例子,但大多实现的功能比较简单,由于本人对SQL语句还不是很熟悉,更别说存储过程了,所以在实现该例子的时候遇到了很多问题,现在拿给大家来分享. 二. 在本例子 ...
- SpringBoot Mybatis注解调用Mysql存储过程并接收多个OUT结果集(多个mode=IN和mode=OUT参数)
其他同学提供的方式大部分都是Map接收调用mysql存储过程返回OUT结果集,要么游标,要么单个OUT,然后再次加工成想要的对象.涉及到直接用注解实现自动转换OUT参数结果集为对象时,都是忽略带过. ...
- hibernate4调用mysql存储过程_hibernate调用存储过程
一. 建表与初始化数据 在mysql的test数据库中建立一张新表:tbl_user,建表语句如下: DROP TABLE IF EXISTS `user`; CREATE TABLE `tbl_us ...
最新文章
- python大佬养成计划----flask_sqlalchemy操作数据库
- JS中的let和var的区别
- Android studio 签名使用转
- java rsa加密解密_前端实现对请求参数进行RSA加密amp;解密,针对字符串过长进行分段加密amp;分段解密的处理...
- 笔记-中项案例题-2020年下-立项管理
- JavaScript No Overloading 函数无重载之说
- DE连接,创建数据集,数据导入以及数据导出(转载)
- Codeigniter 3 拓展HMVC
- win7个人计算机的ip地址,win7计算机ip地址查询_win7本机ip地址查询
- 微信域名屏蔽检测方法 微信域名检测接口的机制
- jsp java 购物车,JSP购物车实例[一]
- 《CSS世界》--张鑫旭 : 前端样式高手进阶CSS
- 关于晶圆介绍以及IGBT晶圆的应用
- JS港澳台身份证校验
- 3DMax提示:单位不匹配
- 音乐平台程序源码分享
- DVWA之暴力破解漏洞
- 折腾Transmission实现固定IP服务器BT做种教程
- CentOS7.2 Django + uwsgi + Nginx 部(cǎi )署(kēng)指(zhī)南(lǜ)
- 计算机专业硕士学制,计算机研究生学制
热门文章
- 分布式配置管理平台 - Disconf介绍
- java 生成xml数据
- 未能加载文件或程序集或它的某一个依赖项。参数不正确
- 问题解决——OpenGL超级宝典 关于gltDrawTorus的错误解决
- 关于wow(mangos模拟器) 的物品生成器---wowItemEdit 1.0
- 时间复杂度为O(n)的计数排序算法
- Tri-training, 协同训练算法
- 华科c语言作业,华中科技大学标准c语言程序设计及应用习题答案
- Try using .loc[row_indexer,col_indexer] = value instead
- ubuntu将一个文件夹下的所有内容复制到另一个文件夹下