浅谈JaveWeb项目分层设计

原文链接: https://my.oschina.net/u/2489417/blog/777246

在搭建JaveWeb项目架构中,我们一般会分层设计,便于后期的维护,开发人员可以分模块去开发,提高整体团队的开发效率。层次按职责分一般分四层:表现层(SpringMVC)、持久层(mybatis)、业务层(service)和域模型层(SDK)。每一个层都有各自的职责,应该隔离开来。

表现层:我们可以选用技术SpringMVC,当然还可以选用Struts,该层主要根据用户的请求,响应跳转到不同的UI界面展现。

持久层:我们可选用技术mybatis或者hibernate,该层主要是针对数据库操作,比如:连接数据库、操作数据库(简单的增删改查)。

业务层:service主要是具体业务代码的实现,会调用dao层的接口,我们这里把dao层称为SDK层。

域模型层:SDK主要特指软件关注的领域 ,会设计出很多实体对象和接口。

四层的项目结构如下:

project-parent

            |----pom.xml

            |----project-mybatis

                            |----pom.xml

            |----project-SDK

                            |----pom.xml

            |----project-service

                            |----pom.xml

            |----project-springmvc

                            |---pom.xml

若考虑到业务需要设计到分布式和大数据。我们可以在这基本四层上进行扩展,比如下面的架构体系

用到Dubbo的分布式服务框架,storm+kafka实时处理消息队列,redis去做高速缓存。

浅谈JaveWeb项目分层设计_第1张图片

扩展项目结构如下:

project-parent

            |----pom.xml

            |----project-core

                            |----pom.xml

            |----project-msgConsumer

                            |----pom.xml

            |----project-msgProducer

                            |----pom.xml

            |----project-mybatis

                            |----pom.xml

            |----project-page

                            |----pom.xml

            |----project-SDK

                            |----pom.xml

            |----project-service

                            |----pom.xml

            |----project-SpringMVC

                            |---pom.xml

            |----project-storm

                            |----pom.xml

接下来博客中会介绍用maven去构建多模块项目。

 

 

 

转载于:https://my.oschina.net/u/2489417/blog/777246

你可能感兴趣的:(浅谈JaveWeb项目分层设计)