服务A,端口8000
模块B不是微服务,没有端口。
模块B中有一个controller接口,地址为/test/code,切服务A中没有这个接口,只有B中有。
现在服务A的pom文件中导入了B的依赖,运行服务A,访问localhost:8000/test/code,响应成功了,这是什么情况。新手程序猿第一次见到这种操作,挺好奇的。请问这是什么原理呀
没啥原理,只要你成功注入controller到容器里面,springmvc就能处理,和具体来源无关
依赖的本质就是直接引用,换句话说,你可以直接看成模块B里面的内容无条件的被A直接拷过去了
这种模块设计方法,是解决当系统功能特别复杂庞大时,让代码按特定业务需求分离
引用了就有了呗,当然这不是继承,而且也不算服务间调用,只是简单的使用别人的接口