javaweb如何模块化????

javaweb如何模块化????

问题描述:

把一个项目分成多个模块,各模块应该打成什么包呢?jar?对于spring+mybatis+springmvc整合的项目来说,如果打成jar包,应该只能将模块写到service层,不能到控制器,因为当有多个带有控制器的jar,并通过url访问他们时,是不处在同一个会话期的。但是这样写的话(没有控制器),最后还要统一将控制器写在一个项目中。如果把各模块打包成war(带控制器)也不在同一会话期。 一般情况下,javaweb项目,应该如何划分模块,打成什么包。或者如何使多war,jar包共享session?

一般而言是将共同工具类抽象成common模块,达成jar,别的项目依赖此模块,若无分布式架构的需要,service、web等模块都可以在同一模块内,打成war;若有分布式架构的需要,则需要将Service和web区别开来,各自作为一个模块。通过dubbo等分布式架构的注册发现机制,将service打成war启动,进行注册服务,将Web模块打成war去发现服务,从而实现分布式架构。

使用maven可以到达你要的效果。

用maven关联相关项目吧,只是这样增加了依赖性,如果是共用的工具,可以打成jar包。

http://niweiwei.iteye.com/blog/1965760