这个是已经写好的函数,两个参数。
我应该如何在mybtis里面写,以及在java代码里面写
1.先在pl/sql中编写测试好自定义函数,待用。
2.在mybatis的mapper映射文件中调用函数
{#{userids,mode=OUT,jdbcType=VARCHAR} = call F_GET_ROLEIDS(#{userid,mode=IN,jdbcType=VARCHAR})}
3.java中的调用
Map map = new HashMap();
map.put("userids", "");
map.put("userid", 4);
sqlSessionTemplate.selectOne("test.getUerids", map);
String ids = (String)map.get("userids");
说明:
java.util.Map中put了userid、userids两个属性,其中userid存放了函数的输入参数,userids用于存放函数调用后的返回值。
注:转自http://blog.csdn.net/jbgtwang/article/details/9064359
1.先在pl/sql中编写测试好自定义函数,待用。
2.在mybatis的mapper映射文件中调用函数
{#{userids,mode=OUT,jdbcType=VARCHAR} = call F_GET_ROLEIDS(#{userid,mode=IN,jdbcType=VARCHAR})}
3.java中的调用
Map map = new HashMap();
map.put("userids", "");
map.put("userid", 4);
sqlSessionTemplate.selectOne("test.getUerids", map);
String ids = (String)map.get("userids");
说明:
java.util.Map中put了userid、userids两个属性,其中userid存放了函数的输入参数,userids用于存放函数调用后的返回值。
注:转自http://blog.csdn.net/jbgtwang/article/details/9064359
1.先在pl/sql中编写测试好自定义函数,待用。
2.在mybatis的mapper映射文件中调用函数
{#{userids,mode=OUT,jdbcType=VARCHAR} = call F_GET_ROLEIDS(#{userid,mode=IN,jdbcType=VARCHAR})}
3.java中的调用
Map map = new HashMap();
map.put("userids", "");
map.put("userid", 4);
sqlSessionTemplate.selectOne("test.getUerids", map);
String ids = (String)map.get("userids");
1.先在pl/sql中编写测试好自定义函数,待用。
2.在mybatis的mapper映射文件中调用函数
{#{userids,mode=OUT,jdbcType=VARCHAR} = call F_GET_ROLEIDS(#{userid,mode=IN,jdbcType=VARCHAR})}
3.java中的调用
Map map = new HashMap();
map.put("userids", "");
map.put("userid", 4);
sqlSessionTemplate.selectOne("test.getUerids", map);
String ids = (String)map.get("userids");
xml文件里面直接写调用的sql就好了
http://blog.csdn.net/qq_29347295/article/details/77504807,这是别人的,你可以看下有没有用
可以直接在mybatis的mapper映射文件中调用函数:{#{userids,mode=OUT,jdbcType=VARCHAR} = call F_GET_ROLEIDS(#{userid,mode=IN,jdbcType=VARCHAR})}
XML里面:
<parameterMap class="java.util.HashMap" id="paramId" >
<parameter property="jobsid" javaType="INT" jdbcType="NUMBER" mode="IN"/>
<parameter property="direction" javaType="INT" jdbcType="NUMBER" mode="IN"/>
</parameterMap>
<procedure id="updYh" parameterMap="paramId" >
{call FN_PP_GET_JOBINTERVAL_BY_JOBSID(?,?)}
</procedure>
JAVA里面:
JAVA里面就是把你的两个参数封装到map里面就可以了。
如:
Map map = new HashMap();
map.put("jobsid", "123");
map.put("direction", "订单编号");
dbDao.update(map);