好好编程-物流项目01【搭建maven工程】
文章目录
- 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工程】相关推荐
- 好好编程-物流项目06【Spring整合】
文章目录 Spring整合 配置文件 1.基本配置文件 2.事务配置文件 web.xml中注册 上篇文章中我们整合了Dao层,本篇文章将Spring整合进来. Spring整合 Spring的 ...
- 商城项目笔记一:搭建Maven工程,利用Dubbo实现SOA面向服务框架,部署zookeeper注册中心,FastDFS框架实现图片上传,部署nginx服务器。
文章目录 1. 商城项目总结笔记: 1.1. 第一天工作记录:搭建Maven工程 1.2. 第二天工作记录:创建SOA面向服务架构,通过工具类实现分页技术 1.3. 第三天工作记录:部署nginx服务 ...
- 在eclipse中搭建maven工程(第二种方法)
第一种方法见前面的博客 用Maven创建web项目(详细步骤) maven-3.3.9 下载之后就是配置环境变量,可以去百度一哈,用MAVEN_HOME配置,我图方便,直接在用户的path配置的. 接 ...
- 转:在eclipse中搭建maven工程(第二种方法)
转自 : https://blog.csdn.net/bug_moving/article/details/54178092: 第一种方法见前面的博客 用Maven创建web项目(详细步骤) mave ...
- 学习淘淘商城第二课(搭建Maven工程)
上节课我们一起学习了淘淘商城的架构,这节课我们一起学习如何搭建Maven工程,关于Maven的好处,网上有很多,这里就不啰嗦了. Maven常见的打包方式有:jar.war.pom pom工程一般都是 ...
- J2EE搭建maven工程(选择使用jdk和增加资源文件夹)
在new -> maven project 直接next: 选择工程类型"maven-archetype_webapp" 选择个人id也就是工程名和groupid finis ...
- 单片机搭建环境烧录方法_万物互联-stm32单片机简介、烧录、编程及其项目环境搭建...
万物互联-stm32单片机简介.烧录.编程 前言:stm32单片机这里给出简单介绍,给不了解的朋友普及下硬件端的基本知识,叙述的较为简单,想深入研究的朋友可以去一些官方网站.论坛.博客汲取知识.最下端 ...
- electron+vue3全家桶+vite项目搭建【一】使用开源项目快速搭建基础工程
文章目录 指引 1.创建工程 2.安装依赖 3.运行工程 4.打包工程 指引 项目地址 视频讲解 1.创建工程 直接用开源的electron构建脚手架:https://github.com/elect ...
- Maven工程中Pom.xml文件总是报依赖找不到
是不是总是在拉取新项目时遇到下面的问题,依赖找不到 不管是右击项目reload加载还是重启项目都没法把这个依赖给下载下来 有些pom.xml中的依赖可以手动增加版本号就可以识别到了,有的依赖可能是因为 ...
- 头条项目---01项目介绍和工程搭建
第一章 项目介绍和工程搭建 学习目标 熟悉移动端应用系统的架构设计 熟悉大型软件系统设计中的各种图形结构 熟悉数据库分库分表设计技巧 熟悉Spring boot2.0+JavaConfig项目封装配置 ...
最新文章
- 程序员的十大谎言,你中了几个? | 每日趣闻
- Mysql 水平拆分和垂直拆分
- Sencha Touch 2.3 自定义主题皮肤,颜色
- 解决html连续字符或数字换行的问题
- sql必知必会(第四版) 学习笔记二 视图
- 第4代白盒測试方法介绍--理论篇
- 【前端知识学习】HTML5 学习笔记
- Vue2+VueRouter2+webpack 构建项目实战系列(完整版) - 收录篇
- java路径Java开发中获得非Web项目的当前项目路径
- android自动接听和挂断电话
- html 目录生成器,Tocify:动态节点目录菜单生成器_html/css_WEB-ITnose
- keras实现nlp
- Python初学笔记
- 批量删除多个 PPT 空白页
- 如何用ps做手绘矢量插画风格照片效果
- 恶意软件横行无忌 DNS“功”不可没
- sql groud by 语句
- Android多人视频聊天应用的开发(二)一对一聊天
- Docker入门-什么是Docker
- 11月最新新萝卜家园GhostXP SP3 电脑城装机极致版系统2011.11