spring的SOA聚合工程应用框架的搭建

  项目选用SOA架构,以达到高效、简洁、易用,方便维护和升级的目的。

  项目中每个服务模块所需依赖的jar包是比较多的,jar包的管理同样应该高效简洁。我们应该使用Maven的聚合工程里来管理。

 这是应用软件的框架演变。

服务层和表现层分开,他们之间的数据交互通信联系通过Dubbo中间件。服务层专注提供服务,这样的软件的前景一下就很开阔了。

用maven建立:

1)父工程:

     parent(定义整个项目工程所需的jar包及版本号,作为所有工程的父类,打包方式为pom)

2)共用工程:

     common(继承parent,打包方式改为jar)

对于某个服务项目来说:需要建立两个工程项目

1)服务层:manager,继承parent。为如下结构(以下工程直接建立为manager的maven moduls)

manager (打包方式改为pom)

   |--manager-dao (maven moduls ,自动继承manager,打包方式改为jar)

   |--manager-pojo (maven moduls,自动继承manager,打包方式改为jar)

   |--manager-interface (maven moduls ,自动继承manager,打包方式改为jar,相当于单一工程的service包,这样的分离在中间件层声明服务接口很方便)

   |--manager-service(maven moduls ,自动继承manager,打包方式改为war,相当于单一工程的服务实现包,server.impl包)

2)表现层:

      manager-web(继承parent,打包方式改为war)

小结:需要在浏览器运行的工程打包方式为war,其余(除parent外)打包方式均为jar;服务层和表现层的运行需要在pom.xml文件设定不同的端口号保证服务的正常运行。

注意:某个子工程要引用共用工程一定要把依赖加到pom.xml中,版本要一致,这样才可以找到。

原文地址:https://www.cnblogs.com/zhangxj/p/9536000.html