多工程:基于Maven的SSM(Spring,SpringMvc,Mybatis)整合的web工程(中)
上篇用了单工程创建了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工程(中)的更多相关文章
- 基于Maven的ssm(spring+springMvc+Mybatis)框架搭建
前言 本demo是在idea下搭建的maven项目,数据库使用Mysql,jdk版本是1.8.0_171,ideal:2017.3.5 一.新建项目 1.file->new->porjec ...
- SSM Spring +SpringMVC+Mybatis 整合配置 及pom.xml
SSM Spring +SpringMVC+Mybatis 配置 及pom.xml SSM框架(spring+springMVC+Mybatis) pom.xml文件 maven下的ssm整合配置步骤
- ssm(spring+springmvc+mybatis)整合之环境配置
1-1.导包 导入SpringMVC.Spring.MyBatis.mybatis-spring.mysql.druid.json.上传和下载.验证的包 1-2.创建并配置web.xml文件 配置sp ...
- SSM(Spring+SpringMvc+Mybatis)整合笔记
1.使用开发工具 jdk1.8 eclipse Tomcat7.0 MySql 2.创建数据库和表,由于重点是整合,所以数据库就随意加几条数据. 3.创建动态Web项目(推荐使用Maven可以用配置来 ...
- SSM Spring+SpringMVC+mybatis+maven+mysql环境搭建
SSM Spring+SpringMVC+mybatis+maven环境搭建 1.首先右键点击项目区空白处,选择new->other..在弹出框中输入maven,选择Maven Project. ...
- SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)
1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...
- SSM(Spring + Springmvc + Mybatis)框架面试题
JAVA SSM框架基础面试题https://blog.csdn.net/qq_39031310/article/details/83050192 SSM(Spring + Springmvc + M ...
- SSM(Spring +SpringMVC + Mybatis)框架搭建
SSM(Spring +SpringMVC + Mybatis)框架的搭建 最近通过学习别人博客发表的SSM搭建Demo,尝试去搭建一个简单的SSMDemo---实现的功能是对用户增删改查的操作 参考 ...
- SSM(Spring,SpringMVC,Mybatis)框架整合项目
快速上手SSM(Spring,SpringMVC,Mybatis)框架整合项目 环境要求: IDEA MySQL 8.0.25 Tomcat 9 Maven 3.6 数据库环境: 创建一个存放书籍数据 ...
- ssm之spring+springmvc+mybatis整合初探
1.基本目录如下 2.首先是向lib中加入相应的jar包 3.然后在web.xml中加入配置,使spring和springmvc配置文件起作用. <?xml version="1. ...
随机推荐
- 添加网站QQ客服链接
http://wpa.qq.com/msgrd?v=3&uin=3475432549&site=qq&menu=yes 将其中的uin值改为客服QQ即可
- Fragment深入解析
写在顶部表示这点很重要: 本文转载自博客:http://blog.csdn.net/lmj623565791/article/details/37970961 欢迎访问原文 自从Fragment ...
- android开发之-Android 开发之4.0界面设计原则-整理
设计原则: 一.让人着迷: 1.给人惊喜:使用漂亮的界面.精心的动画.适时的音乐. 2.真实的对象比按钮和菜单更有趣 这句话的意思是:使用描述描述性的图标作为快捷方式,界面美观 当然这个快捷方 ...
- 不忘初心 --- 重读<<The C Programming Language>>
这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Un ...
- Android开发 旋转屏幕导致Activity重建解决方法(转)
文章来源:http://www.jb51.net/article/31833.htm Android开发文档上专门有一小节解释这个问题.简单来说,Activity是负责与用户交互的最主要机制,任何“ ...
- NPM(Node.js) 使用介绍
前言:express 推出了4.X,自己尝试了一下,出现了各种问题.结果查看了各种文档和问题,现在在这个给大家分享下4.X版本的安装. NPM 使用介绍 NPM是随同NodeJS一起安装的包管理工具, ...
- Git 更新本地代码
先用git remote -v 查看远程仓库的分支: 我分支远程仓库就只有一个分支master 比较本地仓库和远程仓库的不同 我本地仓库和远程仓库的代码是一样的所以没有区别 更新远程代码到本地 合并本 ...
- 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 ...
- java多线程基本概述(四)——死锁
package mytask; public class Task { public static void main(String[] args) { DeadThread thread = new ...
- JS取消浏览器文本选中的方法
一 .问题的出现 今天在使用Easy-UI 的messager.alert()方法时候出现浏览器文本被选中,不知道其中是什么原因,如下图所示. 二 .解决思路 我最后的思路时在弹出消息框的同时,取消浏 ...