转载出处:

SpringMVC+Spring+mybatis+Redis项目从零开始--分布式项目结构搭建

/**

本文为博主原创文章,如转载请附链接。

**/

SSM框架web项目从零开始--分布式项目结构搭建

一.  SSM项目-目录框架搭建实现

1.    序言

做SSM项目有一段时间,从来没有系统性的对整个项目结构做一次总结,临近年关,趁着有时间,想把整个SSM项目框架的相关内容梳理一下,同时也弥补自己不足,可能有些考题考虑不周,请大家多多谅解。

本系列文章,会涉及到Springmvc,spring,mybatis,maven ,mysql,redis等框架知识,如果自身对相关知识不了解的同学,请到对应的官网进行自我充电。同时,本系列文章只是做SSM项目的搭建实例,有些问题不会深入。如果对您有帮助,请点赞吧!

2.    SSM项目从零开始文章目录

本系列文章将分四章进行,具体文章目录如下

1)   SSM项目-maven项目结构搭建

2)   SSM项目-Spring mybatis mysql配置实现

3)   SSM项目-redis缓存策略和配置实现

4)   SSM项目-Springmvc配置实现

3.    SSM项目-maven项目结构搭建

3.1  SSM项目结构

3.1.1     传统SSM项目结构

优点:所有项目代码统一分布在一个文件,易于管理;

缺点:所有项目代码统一分布在一起,各模块耦合度大,不利于代码分布式管理,不利于项目分布式部署,maven需要每个单独编译处理。

3.1.2     分布式SSM项目结构

缺点:代码分散,代码量加大;

优点:代码见耦合度降低,利于代码管理,项目见通过pom依赖进行相关调用依赖,部署时通过jar实现项目间依赖,同时利于项目分布式部署。

3.2  SSM项目结构实现

本节将实现3.1.2中分布式SSM项目结构,整体项目结构如下

3.2.1     ssm-parent

ssm项目maven父工程,pom中可以配置整个web应用相关的架包依赖,插件,jdk版本等
3.2.1.1  Maven project新建

1)   新建maven project项目;

2)   选择 Create a simple project…

3)   设置项目保存目录Location,如果选择默认,可能会出现项目目录文件混乱,不易管理。

3.2.1.2  Configure project

1)   Packaging需要选择pom;

3.2.1.3  ssm-parent项目结构

3.2.2     ssm-commons

ssm项目中公共组件包,以便其他工程调用。
3.2.2.1  Maven project

3.2.2.2  Configure project

1)   Packaging选择jar

2)   ParentProject输入ssm-parent相关信息

3.2.2.3  ssm-commons项目结构

3.2.3     ssm-manager

ssm项目中web应用实现工程
3.2.3.1  Maven project

3.2.3.2  Configure project

1)   Packaging选择pom;

2)   ParentProject输入ssm-parent

3.2.3.3  ssm-manager项目结构

3.2.4     ssm-manager-pojo

pojo存放项目相关实体

3.2.4.1  Maven module

3.2.4.2  Configure project

1)   Packaging选择jar

3.2.5     ssm-manager-service和ssm-manager-mapper

ssm-manager-mapper: dao层,主要与数据交互;

ssm-manager-service: service层,主要进行业务逻辑处理;

ssm-manager-service,ssm-manager-mapper的项目工程类似

ssm-manager-pojo

3.2.6     ssm-manager-controller

ssm-manager-controller:与前端交互控制,同时也包含前端代码;

3.2.6.1  Maven module

类似ssm-manager-pojo创建module;

3.2.6.2  Configure project

1)   Packaging选择war;

3.2.6.3  ssm-manager-controller项目结构

4.    SSM项目-项目结构总结

通过上面的步骤,我们SSM项目整体项目结构已搭建完成,下一章我们将引入Spring,mybatis实现相关配置。

二.  SSM项目-Spring mybatis mysql配置实现

三.  SSM项目-redis缓存策略和配置实现

四.  SSM项目-Springmvc配置实现

SpringMVC+Spring+mybatis项目从零开始--分布式项目结构搭建的更多相关文章

  1. SSM(SpringMVC+Spring+MyBatis)三大框架使用Maven快速搭建整合(实现数据库数据到页面进行展示)

    本文介绍使用SpringMVC+Spring+MyBatis三大框架使用Maven快速搭建一个demo,实现数据从数据库中查询返回到页面进行展示的过程. 技术选型:SpringMVC+Spring+M ...

  2. SpringMVC+Spring+mybatis项目从零开始--Spring mybatis mysql配置实现

    上一章我们把SSM项目结构已搭建(SSM框架web项目从零开始--分布式项目结构搭建)完毕,本章将实现Spring,mybatis,mysql等相关配置. 1.    外部架包依赖引入 外部依赖包引入 ...

  3. Idea SpringMVC+Spring+MyBatis+Maven调整【转】

    Idea SpringMVC+Spring+MyBatis+Maven整合   创建项目 File-New Project 选中左侧的Maven,选中右侧上方的Create from archetyp ...

  4. SpringMVC+Spring+MyBatis+Maven调整【转】

    Idea SpringMVC+Spring+MyBatis+Maven整合   创建项目 File-New Project 选中左侧的Maven,选中右侧上方的Create from archetyp ...

  5. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第八天】(solr服务器搭建、搜索功能实现)

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  6. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis) 的学习实践总结【第六天】

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  7. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis) 的学习实践总结【第四天】

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  8. 第04项目:淘淘商城(SpringMvc+Spring+Mybatis) 的学习实践总结【第三天】

    淘淘商城(SpringMVC+Spring+Mybatis)  是传智播客在2015年9月份录制的,几年过去了.由于视频里课上老师敲的代码和项目笔记有些细节上存在出入,只有根据日志报错信息作出适当的调 ...

  9. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis) 的学习实践总结【第二天】

    淘淘商城(SpringMVC+Spring+Mybatis)  是传智播客在2015年9月份录制的,几年过去了.由于视频里课上老师敲的代码和项目笔记有些细节上存在出入,只有根据日志报错信息作出适当的调 ...

随机推荐

  1. Java获取URL链接的文件类型

    问题发生: Java从网络批量读取图片并保存至本网站服务器后再插入文章中 今天转入一篇文章 http://news.qq.com/a/20170605/045860.htm 发现图片未能成功上传 查看 ...

  2. 安卓之上传文件,即HTTP提交表单

    获取文件: public void Init()    {        noScrollgridview = (GridView) findViewById(R.id.noScrollgridvie ...

  3. Asp.Net 获取物理路径

    一.AppDomain 1.AppDomin获取当前前程序域目录 2.不需要请求上线文实例,例如在Global.ascx中访问等 //网站物理目录 AppDomain.CurrentDomain.Ba ...

  4. Chapter 3 -- Ordering

    Guava's fluent comparator class, Ordering, explained. explained Updated Jun 27, 2013 by cpov...@goog ...

  5. 接收连接basic_socket_acceptor

    概述 TCP有一处和UDP不同的地方是TCP是面向连接的,TCP有建立连接.通信.关闭连接的操作,Boost.Asio提供了ip::tcp::acceptor用来接收新的TCP连接,底层由socket ...

  6. 解决ASP.NET中的各种乱码问题

    解决ASP.NET中的各种乱码问题 阅读目录 开始 页面显示乱码问题 AJAX提交的数据乱码问题 JavaScript中正确的URL编码方式 ASP.NET中正确的URL编码方式 正确的URL编码方式 ...

  7. CListCtrl 之右键菜单

    在使用CListCtrl时要为它添加一个右键菜单,步骤如下: 1. 响应CListCtrl的NM_RCLICK消息. 2. 添加一个菜单资源,在菜单资源中插入要添加到菜单内容.   一般存在两种方法: ...

  8. iOS开发-UITextField手机号和邮箱验证

    不管是网页是手机,用户注册登录的时候绝大数时候都需要手机号码和邮箱地址,而且有些App会限制只能使用手机号注册,iOS方面邮箱正则比较简单,不过手机号码验证找了一下网上的,发现三大运营商的号码段有所变 ...

  9. python 爬虫随机获取User-Agent

    可以有两种方法: 1.随机生成 首先安装 pip install fake-useragent import random from fake_useragent import UserAgent d ...

  10. 文本分类(六):使用fastText对文本进行分类--小插曲

    http://blog.csdn.net/lxg0807/article/details/52960072 环境说明:python2.7.linux 自己打自己脸,目前官方的包只能在linux,mac ...