dubbo架构层次划分(maven)
parent project (pom)
—1.facade层(接口,实体类,常量等等,但是公用方法不放这里,并不是所有的的方法都通用)
—-2.service层 (facade层的实现类,定时任务,队列等后台逻辑,dao层)
—-3.controller层(与前端交互层)
注意点:
①每个子项目都继承父项目,同时父项目中有facade层的jar依赖,所以所有子项目都依赖facade,当facade变更时候,必须重新deploy jar包,保证其他子项目中抓取的jar包是最新的。
②同时要在父项目中做同一的jar包版本管控
maven构建的dubbo项目中,并不是所有都是有父子关系。
dubbo项目中 包含 继承 和 聚合 两种关系
继承:只是单单在子项目中 继承父项目中的jar包依赖,但是父项目并不能编译子项目,也就是编译父项目的时候,不能引出子项目
pom.xml中
../parent_name
聚合:编译的时候,编译父项目即可连其子项目一起编译
父项目pom.xml
1,2,3
父项目–> POM 包
子项目–> war包,jar包
子项目可根据具体需要打成对应的包。
子项目的启动方法有三种
1.通过容器启动,例如 tomcat jetty
2.通过本地调用main方法启动,但是风险较大,慎用,单元测试的时候可用
3.dubbo推荐的启动方法 ,com.alibaba.container.Main.main()方法启动,但是需要注意参数的传递
具体参数后面更新