查询得到男性或女性的数量,如果传入的是0就女性否则是男性
创建表p_user ( id auto_increment int主键, 名字varchar (10), 性炭(2) ); 插入p_user(名字、性别)值(“一个”,“男”); 插入p_user(名字、性别)值(" B ", "女"); 插入p_user(名字、性别)值(“C”,“男”); ——创建存储过程(查询得到男性或女性的数量,如果传入的是0就女性否则是男性) 分隔符$ mybatis创建过程。在sex_id ges_user_count (INT, INT user_count) 开始 如果sex_id=0 从mybatis SELECT COUNT (*)。p_user p_user的地方。性别='女' user_count; 其他的 从mybatis SELECT COUNT (*)。p_user p_user的地方。性别='男' user_count; 如果; 结束 $ ——调用存储过程 分隔符; 设置@user_count=0; mybatis打电话。@user_count ges_user_count(1日); 选择@user_count;
编辑userMapper.xml文件,添加如下的配置项
& lt; ! 查询得到男性或女性的数量,如果传入的是0就女性否则是男性 ——比; & lt;选择id=" getUserCount " parameterMap=癵etUserCountMap statementType”=翱墒昊亍北? 调用mybatis.ges_user_count (& # 63; & # 63;) & lt;/select> & lt; ! parameterMap。(“sexid”, 0); parameterMap。(" usercount ", 1); ——比; & lt; parameterMap类型=癹ava.util。在地图" id=" getUserCountMap”; & lt;参数属性=皊exid”模式=薄癹dbcType=罢?比; & lt;参数属性=皍sercount”模式=薄癹dbcType=罢?比; & lt;/parameterMap>
包me.gacl.test; 进口java.util.HashMap; 进口并不知道; 进口java.util.Map; 进口me.gacl.custom.model.ConditionUser; 进口me.gacl.domain.User; 进口me.gacl.util.MyBatisUtil; 进口org.apache.ibatis.session.SqlSession; 进口org.junit.Test;/* * * @author gacl *测试调用存储过程 */公开课Test6 { @Test 公共空间testGetUserCount () { SqlSession SqlSession=MyBatisUtil.getSqlSession ();/* * *映射sql的标识字符串, * me.gacl.mapping.userMapper是userMapper.xml文件中映射器标签属的名称空间性的值, * getUserCount是选择标签的id属性值,通过选择标签的id属性值就可以找到要执行的SQL */字符串声明=癿e.gacl.mapping.userMapper.getUserCount”;//映射sql的标识字符串 Integer> Map<字符串;parameterMap=new HashMap<字符串,Integer> (); parameterMap。(" sexid ", 1); parameterMap。(" usercount ", 1); sqlSession。selectOne(声明,parameterMap); 整数结果=parameterMap.get (“usercount”); System.out.println(结果); sqlSession.close (); } }
以上所述是小编给大家介绍的mybatis调用存储过程的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留的言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!