构建Maven多模块项目+SSM框架整合(一)

  1. Maven

Apache Maven is a software project management and comprehension tool.
Based on the concept of a project object model (POM), Maven can manage
a project’s build, reporting and documentation from a central piece of
information.

Maven就是一个不需要手动导入依赖、项目打包和项目构建的工具
Maven中重要的两个关键词:继承和聚合
继承:作用就是避免配置重复,对于子项目来说应该关心父项目是怎么样配置的。
聚合:字面理解就是“聚在一起合作完成工作”,就是将子模块聚集起来完成相应的项目需求

  1. 为什么要进行模块化开发?

在多人使用Maven协作开发项目时,尤其是稍微上点规模的项目,每个RD的工作都细分到具体功能和模块,有些模块甚至还要单独部署。

我们假设有这样一个商城项目,包括以下几个模块:

商城前台(shop)
管理后台(admin)
数据库交互模块(dao)
通用业务模块(service)
接口模块(api)
通用工具(util)
其中shop和admin需要单独部署,dao、service、util你可能想要一些经验丰富的人来维护,如果使用一个应用来管理的话,所有的功能和模块都会耦合在一起,所有人都可以随意修改代码,这显然不是我们所期望的。

而且使用一个应用来管理的话,任何一个点的代码有变更,整个项目就需要重新build,使用模块化开发的另一个好处是如果dao的代码被修改,只需要重新build dao模块就可以了。web模块可以build成war,dao、service、util等可以build成jar,只需要配置好依赖关系,就可以实现模块间的解耦合。这样的设计才是遵循“高内聚,低耦合”设计原则的。
我们使用上面的例子进行演示,先进行合理的优化,我们希望dao和service作为通用的底层工具来使用,把它们合并成一个核心模块(core),build成core.jar,简单的Maven模块化项目结构如下:

———- mall //顶级项目
|—— pom.xml //packaging = pom
|—— mall-util //通用工具
| |— pom.xml //packaging = jar
|—— mall-core //核心模块
| |— pom.xml //packaging = jar
|—— mall-web-api //接口模块
| |— pom.xml //packaging = war
|—— mall-web-admin//管理后台
| |— pom.xml //packaging = war
|—— mall-web-shop//商城前台
| |— pom.xml //packaging = war
这些模块中api、admin、shop均是可以单独部署的web应用,相互之间没有依赖关系,但都依赖于core模块,而core模块依赖于util模块。接下来我们按照上述确定的结构来搭建项目结构。

  1. 创建项目
    使用开发工具STS,其他工具也大同小异
    (1) new -> Maven project 选择项目放置的地点 和勾选 create a simple project ,命名study
    这里写图片描述
    注意:父项目要使用 pom 方式进行packaging, 有三种 默认是 jar ,还有一种是web项目的war
    这里写图片描述

    (2)父项目建立好之后,开始建立子模块 new 一个 Maven module
    这里写图片描述
    命名为study-dao,parent为 study
    这里写图片描述
    选择quickstart
    这里写图片描述
    groupID 要和父项目一致,点击finish
    这里写图片描述
    查看一下study-dao的pom.xml
    这里写图片描述
    查看一下study的pom.xml
    这里写图片描述

    (3)同上一样的方式建立 study-service
    只是注意 study-service 模块需要引入 study-dao,在study-service模块的pom.xml 文件中加上
    spring-context也需要用到,先加上

<dependencies>
        <dependency>
            <groupId>com.study</groupId>
            <artifactId>study-dao</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </dependency>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.3.12.RELEASE</version>
        </dependency>

    </dependencies>

(4)建立 study-web 模块同上有一点不同,就是他是webapp ,需要打包成war
这里写图片描述
刚建立的时候会有报错,不要紧,加上 run server就可以
这里写图片描述
这里写图片描述

看一眼整个项目的目录结构,整体架子搭建起来了
这里写图片描述

study-web的pom.xml 添加依赖, 整合SSM框架

<?xml version="1.0"?>
<project
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
    xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.study</groupId>
        <artifactId>study</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <groupId>com.study</groupId>
    <artifactId>study-web</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>study-web Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <properties>
        <spring.version>4.3.12.RELEASE</spring.version>
        <servlet.version>3.1.0</servlet.version>
        <commons-codec>1.10</commons-codec>
        <mybatis.version>3.4.4</mybatis.version>
        <mybatis-spring>1.3.0</mybatis-spring>
        <c3p0>0.9.5.2</c3p0>
        <commons-logging>1.1</commons-logging>
        <mysql-connector-java>5.1.41</mysql-connector-java>
        <mybatis-generator-core>1.3.2</mybatis-generator-core>
        <pagehelper>5.0.0</pagehelper>
    
  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
springmvc是一种基于Spring框架的MVC(Model View Controller)开发模式的Web开发框架。它能够帮助开发者更好地管理请求和响应,让开发过程更加简洁和灵活。MyBatis是一个优秀的持久层框架,可以与Spring相结合进行数据库操作。它能够通过注解或XML配置文件实现数据库的增删改查操作,使开发者能够高效地操作数据库。电商项目是一种在线购物平台,用户可以浏览商品信息、下单购买、查看订单等。Java商城源码是这种电商项目的实现代码,通过使用SpringMVC和MyBatis,能够快速搭建一个完整的电商网站。 SSM框架是指Spring+SpringMVC+MyBatis的组合,是一种常用的JavaWeb开发框架。Spring是一个轻量级的开源框架,提供了很多实用的功能,包括IOC(控制反转)和AOP(面向切面编程)等。SpringMVC是基于Spring的MVC框架,可以实现请求的分发和处理。MyBatis是一个持久层框架,可以与SpringMVC结合使用,完成数据库的操作。Maven是一种软件项目管理工具,可以自动下载和配置项目所需的第三方库和工具。 对于这个电商项目的Java商城源码,使用SSM框架Maven进行开发是一个不错的选择。首先,可以使用Maven来管理项目所需的依赖库,避免手动下载和配置的繁琐过程。其次,使用Spring来提供IOC容器和AOP功能,可以简化开发过程,并且使代码更加易于维护。然后,使用SpringMVC来处理请求和响应,实现网站的跳转和业务逻辑的处理。最后,使用MyBatis来完成与数据库的交互,实现商品信息的增删改查等功能。 综上所述,使用SSM框架Maven进行开发的电商项目Java商城源码,能够快速搭建一个完整的电商网站,实现商品的展示、购买和订单的管理等功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值