存储过程的创建
假设存在一张表:Follow(关注表),其表结构如下:
其中id需要是自增。
假设我们需要实现的存储过程是能根据userId1和userId2的值选择出一条记录。
博主使用的是Navicat,因此创建存储过程的步骤为:
1、点击“函数”:
2、点击“新建函数”:
3、选择“过程”,点击“下一步”:
4、新建两个参数,代表传进去的两个参数userId1和userId2的值,分别取名为a和b,点击完成:
5、将a、b两个 变量重命名为@userId1和@userId2,这是博主的习惯,大家也可以直接利用a、b,然后写上语句即可:
6、保存,命名为“proc_FollowByUserId1AndUserId2Select”,此处的命名规则可以参考我之前的写的 sql 存储过程命名规范。
项目中Mapper层的声明
<span style="white-space:pre"> </span>/**
* 查找两人之间是否存在关注关系
* @param id
* @param id2
* @return
*/
Follow selectByUserId1AndUserId2(Integer id, Integer id2);
FollowMapper.xml中的写法
<resultMap id="BaseResultMap" type="cn.cslg.microblog.PO.Follow" >
<id column="id" property="id" jdbcType="INTEGER" />
<result column="userId1" property="userid1" jdbcType="INTEGER" />
<result column="userId2" property="userid2" jdbcType="INTEGER" />
</resultMap>
<select id="selectByUserId1AndUserId2" resultMap="BaseResultMap">
{call proc_FollowByUserId1AndUserId2Select(
#{0, jdbcType=INTEGER, mode=IN}, #{1, jdbcType=INTEGER, mode=IN})}
</select>
这样就是最简单的在Mybatis中调用存储过程的用例,这已经能解决一些简单的开发中涉及的存储过程的使用,希望大家能通过此能开始了解存储过程的使用,至于更深层次的应用,博主同样也是初学者,会在以后尽可能多的呈现。