当前位置:首页 > 学习笔记 > 正文内容

在mybatis中使用mysql存储过程-教学

廖万里3年前 (2022-11-05)学习笔记9803

mysql  存储过程 ,教程来源:廖万里的CSDN

Mysql中的方法, 好处:安全,复用。缺点:不利于修改。


1,将以下储存过程代码复制到mysql数据库中进行执行

DELIMITER ;;CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_Page`( IN _pagecurrent INT,/*当前页*/
 IN _pagesize INT,/*每页的记录数*/
 IN _table VARCHAR(1000),/*表*/
 IN _ifelse VARCHAR(1000),/*显示字段*/
 IN _where VARCHAR(1000),/*条件*/
 IN _order VARCHAR(1000)/*排序*/
 )
    COMMENT '分页存储过程'BEGIN
 IF _pagesize<=0 THEN 
  SET _pagesize=5; END IF;
 IF _pagecurrent < 1 THEN 
  SET _pagecurrent = 1; 
 END IF;   
 SET @strsql = CONCAT('select (SELECT COUNT(1) FROM ',_table,' where 1=1  ',_where,' ) AS COUNT ,',_ifelse,' from ',_table,' where 1=1  ',_where,' ',_order,' limit ',_pagecurrent*_pagesize-_pagesize,',',_pagesize); 
 PREPARE stmtsql FROM @strsql; 
 EXECUTE stmtsql; 
 DEALLOCATE PREPARE stmtsql; 
END;;
DELIMITER ;

2,Mapper接口中编写以下方法。

在mybatis中使用mysql存储过程-教学编辑

 3,Mapper.xml中

在mybatis中使用mysql存储过程-教学编辑

CALL sp_Page('当前页','每页行数','表名','列名.*','条件','排序'); 

条件和排序中可留空,其他项必填!!!


4,编写main测试即可。







本文链接:https://www.kkkliao.cn/?id=239 转载需授权!

分享到:

版权声明:本文由廖万里的博客发布,如需转载请注明出处。


发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。