上篇用了单工程创建了SSM整合的web工程(http://www.cnblogs.com/yuanjava/p/6748956.html),这次我们把上篇的单工程改造成为多模块工程

一:创建对应的多工程

首先原工程有对应的包如下

因为原单工程是 contoller 调用 service ,service 调用 mapper ,mapper 调用pojo

因此把对应的 service  mapper  pojo 分别拆分出去当做模块  然后把utils公用的抽出去当做common模块

最后创建出来的工程关系如下:

lxs-parent (父工程 pom)

----------lxs-common (子工程 jar 对应原工程里的utils)

--------- lxs-web-parent  (子工程  聚合工程  pom)

----------lxs-pojo (子模块  jar 对应原工程 pojo包)

----------lxs-mapper (子模块  jar 对应原工程 dao包)

----------lxs-service (子模块  jar 对应原工程 service 接口和实现类)

----------lxs-web (子模块 war )

还有另一种创建方式  把lxs-common,lxs-pojo,lxs-mapper,lxs-service lxs-web直接聚合到lxs-parent父工程里。

1.创建项目父工程 lxs-parent

2.创建common工程lxs-common    jar供其他工程使用,继承父工程

3.创建web 工程的父工程 lxs_web_parent,继承父工程

在lxs_web_parent创建聚合工程 点lxs_web_parent 右键创建个

Pojo模块  专门用于存放 pojo 类

同理创建mapper 模块 和 service模块

最后创建 web工程

把lxs-web变成 web工程

至此,所有工程创建完成,结构如下

二:导入对应的jar包和对应的依赖包

把原工程里的pom.xml 里的依赖拷贝到父工程  lxs-parent里

然后理清对应的依赖关系

lxs-parent (父工程 pom)

----------lxs-common

--------- lxs-web-parent  (依赖lxs-common)

----------lxs-pojo (不依赖任何)

----------lxs-mapper (依赖lxs-pojo)

----------lxs-service (依赖lxs-pojo和lxs-mapper )

----------lxs-web (依赖lxs-service )

lxs-common修改 pom.xml ,为了过滤包,暂时先把 lxs-parent 的内容移过去,以后直接慢慢去除不需要的。

去除版本号

lxs-web-parent 依赖lxs-common

lxs-pojo不依赖其他 ,Pom.xml 不修改

lxs-mapper模块 依赖lxs-pojo

lxs-Service 依赖lxs-pojo和 lxs-mapper

lxs-Web 依赖lxs-service

依赖传递完成

三:把原工程对应的模块和代码移动到多模块工程里

1. SSM 工程里webapp等内容全拷贝到 lxs-web工程里

把resources里的内容也拷贝过去

2. 然后开始把原SSM 里的各个包里的内容分别拷到各自的模块中

a. Bean 包对应 pojo

拷贝到

b.Controller包拷贝到lxs-web里

c. Dao包对应mapper模块 拷贝到此模块

d.Service 接口和实现类拷贝到  service模块

至此,所有步骤完成。

接下来验证结果,启动tomcat

多工程创建成功。

下篇: 可以把 service jar 单独拿出来当做一个war 当做服务提供者,然后用前端contoller当做消费者调用,下篇接着改造

多工程:基于Maven的SSM(Spring,SpringMvc,Mybatis)整合的web工程(中)的更多相关文章

  1. 基于Maven的ssm(spring+springMvc+Mybatis)框架搭建

    前言 本demo是在idea下搭建的maven项目,数据库使用Mysql,jdk版本是1.8.0_171,ideal:2017.3.5 一.新建项目 1.file->new->porjec ...

  2. SSM Spring +SpringMVC+Mybatis 整合配置 及pom.xml

    SSM Spring +SpringMVC+Mybatis 配置 及pom.xml SSM框架(spring+springMVC+Mybatis) pom.xml文件 maven下的ssm整合配置步骤

  3. ssm(spring+springmvc+mybatis)整合之环境配置

    1-1.导包 导入SpringMVC.Spring.MyBatis.mybatis-spring.mysql.druid.json.上传和下载.验证的包 1-2.创建并配置web.xml文件 配置sp ...

  4. SSM(Spring+SpringMvc+Mybatis)整合笔记

    1.使用开发工具 jdk1.8 eclipse Tomcat7.0 MySql 2.创建数据库和表,由于重点是整合,所以数据库就随意加几条数据. 3.创建动态Web项目(推荐使用Maven可以用配置来 ...

  5. SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建

    SSM Spring+SpringMVC+mybatis+maven环境搭建 1.首先右键点击项目区空白处,选择new->other..在弹出框中输入maven,选择Maven Project. ...

  6. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  7. SSM(Spring + Springmvc + Mybatis)框架面试题

    JAVA SSM框架基础面试题https://blog.csdn.net/qq_39031310/article/details/83050192 SSM(Spring + Springmvc + M ...

  8. SSM(Spring +SpringMVC + Mybatis)框架搭建

    SSM(Spring +SpringMVC + Mybatis)框架的搭建 最近通过学习别人博客发表的SSM搭建Demo,尝试去搭建一个简单的SSMDemo---实现的功能是对用户增删改查的操作 参考 ...

  9. SSM(Spring,SpringMVC,Mybatis)框架整合项目

    快速上手SSM(Spring,SpringMVC,Mybatis)框架整合项目 环境要求: IDEA MySQL 8.0.25 Tomcat 9 Maven 3.6 数据库环境: 创建一个存放书籍数据 ...

  10. ssm之spring+springmvc+mybatis整合初探

    1.基本目录如下  2.首先是向lib中加入相应的jar包  3.然后在web.xml中加入配置,使spring和springmvc配置文件起作用. <?xml version="1. ...

随机推荐

  1. 添加网站QQ客服链接

    http://wpa.qq.com/msgrd?v=3&uin=3475432549&site=qq&menu=yes 将其中的uin值改为客服QQ即可

  2. Fragment深入解析

    写在顶部表示这点很重要:  本文转载自博客:http://blog.csdn.net/lmj623565791/article/details/37970961   欢迎访问原文 自从Fragment ...

  3. android开发之-Android 开发之4.0界面设计原则-整理

    设计原则: 一.让人着迷: 1.给人惊喜:使用漂亮的界面.精心的动画.适时的音乐. 2.真实的对象比按钮和菜单更有趣   这句话的意思是:使用描述描述性的图标作为快捷方式,界面美观   当然这个快捷方 ...

  4. 不忘初心 --- 重读<<The C Programming Language>>

    这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Un ...

  5. Android开发 旋转屏幕导致Activity重建解决方法(转)

     文章来源:http://www.jb51.net/article/31833.htm Android开发文档上专门有一小节解释这个问题.简单来说,Activity是负责与用户交互的最主要机制,任何“ ...

  6. NPM(Node.js) 使用介绍

    前言:express 推出了4.X,自己尝试了一下,出现了各种问题.结果查看了各种文档和问题,现在在这个给大家分享下4.X版本的安装. NPM 使用介绍 NPM是随同NodeJS一起安装的包管理工具, ...

  7. Git 更新本地代码

    先用git remote -v 查看远程仓库的分支: 我分支远程仓库就只有一个分支master 比较本地仓库和远程仓库的不同 我本地仓库和远程仓库的代码是一样的所以没有区别 更新远程代码到本地 合并本 ...

  8. ubuntu 14.04 64位安装HTK3.5

    1.http://htk.eng.cam.ac.uk/download.shtml 官网下载HTK source code以及HDecode 2.分别解压HTK-3.5.beta-2.tar.gz.H ...

  9. java多线程基本概述(四)——死锁

    package mytask; public class Task { public static void main(String[] args) { DeadThread thread = new ...

  10. JS取消浏览器文本选中的方法

    一 .问题的出现 今天在使用Easy-UI 的messager.alert()方法时候出现浏览器文本被选中,不知道其中是什么原因,如下图所示. 二 .解决思路 我最后的思路时在弹出消息框的同时,取消浏 ...