栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

mybatis调用存储过程的实例代码

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

mybatis调用存储过程的实例代码

一、提出需求

  查询得到男性或女性的数量, 如果传入的是0就女性否则是男性

二、准备数据库表和存储过程

 create table p_user( 
   id int primary key auto_increment, 
   name varchar(10),
   sex char(2)
 ); 
 insert into p_user(name,sex) values('A',"男"); 
 insert into p_user(name,sex) values('B',"女"); 
 insert into p_user(name,sex) values('C',"男"); 
 -- 创建存储过程(查询得到男性或女性的数量, 如果传入的是0就女性否则是男性)
 DELIMITER $
 CREATE PROCEDURE mybatis.ges_user_count(IN sex_id INT, OUT user_count INT)
 BEGIN 
 IF sex_id=0 THEN
 SELECt COUNT(*) FROM mybatis.p_user WHERe p_user.sex='女' INTO user_count;
 ELSE
 SELECt COUNT(*) FROM mybatis.p_user WHERe p_user.sex='男' INTO user_count;
 END IF;
 END 
 $
 -- 调用存储过程
 DELIMITER ;
 SET @user_count = 0;
 CALL mybatis.ges_user_count(1, @user_count);
 SELECT @user_count;

三、编辑userMapper.xml

  编辑userMapper.xml文件,添加如下的配置项


     
   
   
     
     
   

四、编写单元测试代码

 package me.gacl.test; 
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map; 
 import me.gacl.custom.model.ConditionUser;
 import me.gacl.domain.User;
 import me.gacl.util.MyBatisUtil;
 import org.apache.ibatis.session.SqlSession;
 import org.junit.Test;
 
 
 public class Test6 {
   
   @Test
   public void testGetUserCount(){
     SqlSession sqlSession = MyBatisUtil.getSqlSession();
     
     String statement = "me.gacl.mapping.userMapper.getUserCount";//映射sql的标识字符串
     Map parameterMap = new HashMap();
     parameterMap.put("sexid", 1);
     parameterMap.put("usercount", -1);
     sqlSession.selectOne(statement, parameterMap);
     Integer result = parameterMap.get("usercount");
     System.out.println(result);
     sqlSession.close();
   }
 }

总结

以上所述是小编给大家介绍的mybatis调用存储过程的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对考高分网网站的支持!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/143532.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号