api不能直接调用数据层mapper?但api又可以依赖多个子模块?

api不能直接调用数据层mapper?但api又可以依赖多个子模块?

http://img1.sycdn.imooc.com//climg/5e6b287b09bbb31819201080.jpg

老师,视频里先说,api不能直接调用数据层mapper,因为中间依赖了业务层service。但是后来又说api可以依赖多个子模块,比如视频里的common-mail。这个common-mail似乎是随意举出的一个方法,那么也就是说api可以随意依赖某个模块咯?还是需要某些条件才可以形成依赖关系?因为如果是随意的,那api也可以直接调用mapper 啊?这里的mapper层和后来举出的common-mail层(模块),有什么不同吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

模块是一个工程,是作为聚合工程中的一员,他是可以供其他的任何工程集成去调用。这就是解耦了,相当于一个组件。而数据层,要遵守mvc设计原则,从api到service再到数据层。

  • 另外呢,虽然mapper是一个maven子模块,但是说到底他是数据层的
    2020-03-13 15:06:12
  • 也就是说,在这里,数据层的影响覆盖了子模块的影响。因为子模块是可以供其他工程调用的,但因为mapper是数据层(同样也是子模块),所以数据层的影响覆盖了子模块。必须遵循api,service,数据层?那么这种规范是由idea强制语法限制的,还是说只是一种开发习惯?如果我硬要api直接调用mapper,应该也是可以的吧?
    2020-03-13 15:21:57
  • 你硬要调用数据层也没问题的。mvc是把层次分的更加明朗哈。
    2020-03-13 16:12:44
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师