mybatis 怎么调用oraclemybatis调用存储过程程

昨天在项目经理那里得到了一个需求所有业务逻辑都写在mybatis调用存储过程程里面。

1.以后出现业务上的变更直接修改mybatis调用存储过程程,而不用动项目

2.在java中做业务逻辑判斷需要与数据库交互多次,而用mybatis调用存储过程程则可减少至一次而且好的mybatis调用存储过程程,执行效率高

但是我个人觉得如果用存储功能,那就于数据库的依赖就太强了提高了项目与数据库之间的耦合度,如果项目一旦换了数据库那所有mybatis调用存储过程程将重写。我层看过一个项目所有的业务逻辑都用mybatis调用存储过程程代替,包括登录校验返回的提示信息

好像有点跑题了,言归正传:

mybatis3.0调用oraclemybatis调用存储过程程这里只说应该注意的,

 statementType里的CALLABLE是标注此sql为mybatis调用存储过程程 parameterType是标注要传的参数看了一些资料,有些同志在这里并没有写parameterType但是也成功叻,不过他们传的是map这里咱先不管,严谨一点总是好的还是加上。原来以为有传参就应该有resultMap回参,但是当我在java中这样写时:

 返回的昰null后来仔细一想,mybatis调用存储过程程是只传值不返回的返回的那个是函数,所以我们要接受的返回的东西应该在我们传给他的参数里,也就是说调用mybatis调用存储过程程后所以可以写成:

 语言组织的不太好,请谅解转载请注明出处

Oracle数据库连接属性(需要根据自己嘚实际情况进行修改):

五、Mapper单元测试代码

我要回帖

更多关于 mybatis调用存储过程 的文章

 

随机推荐