文章目录

  • Maven项目搭建
    • 目录结构
    • 依赖关系图
    • logistics-parent
      • 1.创建项目
      • 2.定义依赖的版本
    • logistics-common
      • 1.创建项目
      • 2.配置依赖
    • logistics-manager
      • 1.创建项目
      • 2.添加依赖
    • 四个模块
      • 1.logistics-manager-pojo
        • 1.1创建项目
        • 1.2依赖设置
      • 2.logistics-manager-dao
        • 2.1创建项目
        • 2.2设置依赖
      • 3.logistics-manager-service
        • 3.1创建项目
        • 3.2设置依赖
      • 4.logistics-manager-web
        • 4.1创建项目
        • 4.2设置依赖

  本文开始通过一个简单的物流项目来将前面的讲的SSM框架内容整合练习下。

Maven项目搭建

  本项目采用maven聚合的方式搭建,如果对maven不是太熟悉请先复习下maven的内容.地址如下:


maven专栏


目录结构

logistics-parent:父工程,打包方式pom,管理jar包的版本|        项目中所有的工程都应该继承父工程|--logistics-common:通用的工具类 打包方式jar|--logistics-manager:服务工程。聚合工程 Pom工程|--logistics-manager-pojo:打包方式jar|--logistics-manager-dao:打包方式jar|--logistics-manager-service:打包方式jar|--logistics-manager-web:打包方式war

依赖关系图

logistics-parent

1.创建项目

  开始创建logistics-parent工程,





创建成功

2.定义依赖的版本

  我们在pom.xml文件统一管理整个项目的j依赖的jar包的版本,pom.xml文件内容如下,<dependencyManagement>只管理版本,不实际依赖。<dependency>才实际依赖。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bobo</groupId><artifactId>logistics-parent</artifactId><version>0.0.1-SNAPSHOT</version><packaging>pom</packaging><!-- 集中定义依赖版本号 --><properties><junit.version>4.12</junit.version><spring.version>4.3.3.RELEASE</spring.version><mybatis.version>3.2.8</mybatis.version><mybatis.spring.version>1.2.2</mybatis.spring.version><mybatis.paginator.version>1.2.15</mybatis.paginator.version><mysql.version>5.1.32</mysql.version><slf4j.version>1.6.4</slf4j.version><jackson.version>2.4.2</jackson.version><druid.version>1.0.9</druid.version><httpclient.version>4.3.5</httpclient.version><jstl.version>1.2</jstl.version><servlet-api.version>2.5</servlet-api.version><jsp-api.version>2.0</jsp-api.version><joda-time.version>2.5</joda-time.version><commons-lang3.version>3.3.2</commons-lang3.version><commons-io.version>1.3.2</commons-io.version><commons-net.version>3.3</commons-net.version><pagehelper.version>4.1.6</pagehelper.version><jsqlparser.version>0.9.1</jsqlparser.version><commons-fileupload.version>1.3.1</commons-fileupload.version><jedis.version>2.7.2</jedis.version><solrj.version>4.10.3</solrj.version><dubbo.version>2.5.3</dubbo.version><zookeeper.version>3.4.7</zookeeper.version><zkclient.version>0.1</zkclient.version><activemq.version>5.11.2</activemq.version><freemarker.version>2.3.23</freemarker.version><quartz.version>2.2.2</quartz.version><shiro-spring.version>1.2.3</shiro-spring.version><shiro-ehcache.version>1.2.3</shiro-ehcache.version></properties><dependencyManagement><dependencies><!-- 时间操作组件 --><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><!-- Apache工具组件 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-io</artifactId><version>${commons-io.version}</version></dependency><dependency><groupId>commons-net</groupId><artifactId>commons-net</artifactId><version>${commons-net.version}</version></dependency><!-- Jackson Json处理工具包 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>${jackson.version}</version></dependency><!-- 单元测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>${junit.version}</version><scope>test</scope></dependency><!-- 日志处理 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>${slf4j.version}</version></dependency><!-- Mybatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>${mybatis.version}</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>${mybatis.spring.version}</version></dependency><dependency><groupId>com.github.miemiedev</groupId><artifactId>mybatis-paginator</artifactId><version>${mybatis.paginator.version}</version></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>${pagehelper.version}</version></dependency><dependency><groupId>com.github.jsqlparser</groupId><artifactId>jsqlparser</artifactId><version>${jsqlparser.version}</version></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!-- 连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><!-- Spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jms</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>${spring.version}</version></dependency><!-- JSP相关 --><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>${jstl.version}</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>${servlet-api.version}</version><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jsp-api</artifactId><version>${jsp-api.version}</version><scope>provided</scope></dependency><!-- 文件上传组件 --><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>${commons-fileupload.version}</version></dependency><!-- Redis客户端 --><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>${jedis.version}</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring</artifactId><version>${shiro-spring.version}</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-ehcache</artifactId><version>${shiro-ehcache.version}</version></dependency></dependencies></dependencyManagement><build><finalName>${project.artifactId}</finalName><plugins><!-- 资源文件拷贝插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><version>2.7</version><configuration><encoding>UTF-8</encoding></configuration></plugin><!-- java编译插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.6.0</version><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins><pluginManagement><plugins><!-- 配置Tomcat插件 --><plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifactId><version>2.2</version></plugin></plugins></pluginManagement></build>
</project>

logistics-common

1.创建项目


2.配置依赖

  接下来,我们来给logistics-common工程的pom.xml文件添加依赖,common顾名思义,就是大家都会调用的,像公共组件。我们从logistics-parent工程中复制公共组件的依赖到logistics-common的pom.xml文件当中,logistics-common的pom.xml文件的内容如下,由于logistics-parent工程中定义了定义版本号,因此我们在logistics-common工程中不用定义组件的版本了。保存后,maven会自动下载相关依赖。

  <dependencies><!-- 时间操作组件 --><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><!-- Apache工具组件 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-io</artifactId></dependency><dependency><groupId>commons-net</groupId><artifactId>commons-net</artifactId></dependency><!-- Jackson Json处理工具包 --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></dependency><!-- 单元测试 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency><!-- 日志处理 --><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></dependency></dependencies>

logistics-manager

1.创建项目

2.添加依赖

  建完之后,我们在logistics-manager的pom.xml文件中添加对logistics-common的依赖。

  <dependencies><!-- 添加对logistics-common的依赖 --><dependency><groupId>com.bobo</groupId><artifactId>logistics-common</artifactId><version>0.0.1-SNAPSHOT</version></dependency></dependencies>

四个模块

1.logistics-manager-pojo

1.1创建项目



1.2依赖设置

  此项目不用添加额外依赖暂时

2.logistics-manager-dao

2.1创建项目

2.2设置依赖

  建完logistics-manager-pojo之后,我们打开logistics-manager-dao模块的pom.xml文件,并在其中添加对logistics-manager-pojo的依赖,另外由于dao层需要Mybatis、Mysql、分页、连接池的包,因此我们在pom.xml文件中添加对这些的依赖。

<dependencies><dependency><groupId>com.bobo</groupId><artifactId>logistics-manager-pojo</artifactId><version>0.0.1-SNAPSHOT</version></dependency><!-- Mybatis --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId></dependency><dependency><groupId>com.github.miemiedev</groupId><artifactId>mybatis-paginator</artifactId></dependency><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId></dependency><dependency><groupId>com.github.jsqlparser</groupId><artifactId>jsqlparser</artifactId></dependency><!-- MySql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- 连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId></dependency>
</dependencies>

3.logistics-manager-service

3.1创建项目

3.2设置依赖

  需要依赖logistics-manager-dao。

 <dependencies><!-- service 依赖 dao --><dependency><groupId>com.bobo</groupId><artifactId>logistics-manager-dao</artifactId><version>0.0.1-SNAPSHOT</version></dependency><!-- Spring --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jms</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId></dependency></dependencies>

4.logistics-manager-web

4.1创建项目


创建报错

缺少web.xml.我们手动创建一个即可

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"><display-name>Day01-SpringMVC01-HelloMVC</display-name><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>

4.2设置依赖

<dependencies><!-- 依赖service --><dependency><groupId>com.bobo</groupId><artifactId>logistics-manager-service</artifactId><version>0.0.1-SNAPSHOT</version></dependency>      <!-- JSP相关 --><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jsp-api</artifactId><scope>provided</scope></dependency><!-- shiro相关的依赖 --><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring</artifactId></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-ehcache</artifactId></dependency>  <dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId></dependency></dependencies>


项目搭建完成,下篇继续~~

好好编程-物流项目01【搭建maven工程】相关推荐

  1. 好好编程-物流项目06【Spring整合】

    文章目录 Spring整合 配置文件 1.基本配置文件 2.事务配置文件 web.xml中注册   上篇文章中我们整合了Dao层,本篇文章将Spring整合进来. Spring整合   Spring的 ...

  2. 商城项目笔记一:搭建Maven工程,利用Dubbo实现SOA面向服务框架,部署zookeeper注册中心,FastDFS框架实现图片上传,部署nginx服务器。

    文章目录 1. 商城项目总结笔记: 1.1. 第一天工作记录:搭建Maven工程 1.2. 第二天工作记录:创建SOA面向服务架构,通过工具类实现分页技术 1.3. 第三天工作记录:部署nginx服务 ...

  3. 在eclipse中搭建maven工程(第二种方法)

    第一种方法见前面的博客 用Maven创建web项目(详细步骤) maven-3.3.9 下载之后就是配置环境变量,可以去百度一哈,用MAVEN_HOME配置,我图方便,直接在用户的path配置的. 接 ...

  4. 转:在eclipse中搭建maven工程(第二种方法)

    转自 : https://blog.csdn.net/bug_moving/article/details/54178092: 第一种方法见前面的博客 用Maven创建web项目(详细步骤) mave ...

  5. 学习淘淘商城第二课(搭建Maven工程)

    上节课我们一起学习了淘淘商城的架构,这节课我们一起学习如何搭建Maven工程,关于Maven的好处,网上有很多,这里就不啰嗦了. Maven常见的打包方式有:jar.war.pom pom工程一般都是 ...

  6. J2EE搭建maven工程(选择使用jdk和增加资源文件夹)

    在new -> maven project 直接next: 选择工程类型"maven-archetype_webapp" 选择个人id也就是工程名和groupid finis ...

  7. 单片机搭建环境烧录方法_万物互联-stm32单片机简介、烧录、编程及其项目环境搭建...

    万物互联-stm32单片机简介.烧录.编程 前言:stm32单片机这里给出简单介绍,给不了解的朋友普及下硬件端的基本知识,叙述的较为简单,想深入研究的朋友可以去一些官方网站.论坛.博客汲取知识.最下端 ...

  8. electron+vue3全家桶+vite项目搭建【一】使用开源项目快速搭建基础工程

    文章目录 指引 1.创建工程 2.安装依赖 3.运行工程 4.打包工程 指引 项目地址 视频讲解 1.创建工程 直接用开源的electron构建脚手架:https://github.com/elect ...

  9. Maven工程中Pom.xml文件总是报依赖找不到

    是不是总是在拉取新项目时遇到下面的问题,依赖找不到 不管是右击项目reload加载还是重启项目都没法把这个依赖给下载下来 有些pom.xml中的依赖可以手动增加版本号就可以识别到了,有的依赖可能是因为 ...

  10. 头条项目---01项目介绍和工程搭建

    第一章 项目介绍和工程搭建 学习目标 熟悉移动端应用系统的架构设计 熟悉大型软件系统设计中的各种图形结构 熟悉数据库分库分表设计技巧 熟悉Spring boot2.0+JavaConfig项目封装配置 ...

最新文章

  1. 程序员的十大谎言,你中了几个? | 每日趣闻
  2. Mysql 水平拆分和垂直拆分
  3. Sencha Touch 2.3 自定义主题皮肤,颜色
  4. 解决html连续字符或数字换行的问题
  5. sql必知必会(第四版) 学习笔记二 视图
  6. 第4代白盒測试方法介绍--理论篇
  7. 【前端知识学习】HTML5 学习笔记
  8. Vue2+VueRouter2+webpack 构建项目实战系列(完整版) - 收录篇
  9. java路径Java开发中获得非Web项目的当前项目路径
  10. android自动接听和挂断电话
  11. html 目录生成器,Tocify:动态节点目录菜单生成器_html/css_WEB-ITnose
  12. keras实现nlp
  13. Python初学笔记
  14. 批量删除多个 PPT 空白页
  15. 如何用ps做手绘矢量插画风格照片效果
  16. 恶意软件横行无忌 DNS“功”不可没
  17. sql groud by 语句
  18. Android多人视频聊天应用的开发(二)一对一聊天
  19. Docker入门-什么是Docker
  20. 11月最新新萝卜家园GhostXP SP3 电脑城装机极致版系统2011.11

热门文章

  1. Ubuntu18.04下的模拟神器RetroArch
  2. 一次完整的软件工程课程设计
  3. 关于SI4463和AIS的学习笔记
  4. java jxls 变量,11、进阶之Jxls2的自定义函数
  5. Maven 教程:IDEA开发环境中maven 项目配置JDK9,JDK10,JDK11,JDK12..等EA版本的配置方法 系列教程一
  6. 2021年PMP考试模拟题1(含答案)
  7. Android之应用市场排行榜、上架、首发(非原创)
  8. 百度地图转换高德地图经纬度问题在线转换工具
  9. 智慧城市发展路径应分级分类
  10. SQLserver常用创建表 添加字段sql