热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:01淘淘商城项目:项目Maven工程搭建

篇首语:本文由编程笔记#小编为大家整理,主要介绍了01淘淘商城项目:项目Maven工程搭建相关的知识,希望对你有一定的参考价值。最近在学习淘淘商城项目的搭建,使用mave

篇首语:本文由编程笔记#小编为大家整理,主要介绍了01淘淘商城项目:项目Maven工程搭建相关的知识,希望对你有一定的参考价值。


最近在学习淘淘商城项目的搭建,使用maven做管理

 

后台管理系统工程搭建:

使用maven的好处:

1.依赖管理、jar包、工程之间依赖

2.项目构建:实现项目的一步构建

3.工程聚合、继承、依赖

 

maven工程分为三种类型:

pom工程:用在父级工程,聚合工程中

war包工程:主要用作网站

jar包工程:就是当作jar使用的,可以用来打包

 

先给出总的项目结构,然后再解释是如何实现这些结构的

技术分享

解释如下:

1.taotao-parent

taotao-parent公司级别的maven工程。主要功能是统一公司做各种项目时用的jar包的版本

比如我们做淘淘商城,或者别的什么项目都要去继承这个项目。

首先安装本地仓库:

把该文件拷贝到自己机子的对应.m2目录下覆盖本地仓库的内容

技术分享

技术分享

下面开始创建maven工程

new-->选择maven project

技术分享

技术分享

然后修改pom.xml文件,如下:

配置所有jar包的版本信息








"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">

     4.0.0

     com.taotao

     taotao-parent

     0.0.1-SNAPSHOT

     pom

    

    

         4.12

         4.1.3.RELEASE

         3.2.8

         1.2.2

         1.2.15

         <mysql.version>5.1.32

         1.6.4

         2.4.2

         1.0.9

         4.3.5

         1.2

         2.5

         2.0

         2.5

         3.3.2

         1.3.2

         3.3

         3.4.2-fix

         0.9.1

         1.3.1

         2.7.2

          4.10.3

    

    

    

        

             

             

                   joda-time

                   joda-time

                   ${joda-time.version}

             

             

             

                   org.apache.commons

                   commons-lang3

                   ${commons-lang3.version}

             

             

                   org.apache.commons

                   commons-io

                   ${commons-io.version}

             

             

                   commons-net

                   commons-net

                   ${commons-net.version}

             

             

             

                   com.fasterxml.jackson.core

                   jackson-databind

                   ${jackson.version}

             

             

             

                   org.apache.httpcomponents

                   httpclient

                   ${httpclient.version}

             

             

             

                   junit

                   junit

                   ${junit.version}

                   test

             

             

             

                   org.slf4j

                   slf4j-log4j12

                   ${slf4j.version}

             

             

             

                   org.mybatis

                   mybatis

                   ${mybatis.version}

             

             

                   org.mybatis

                   mybatis-spring

                   ${mybatis.spring.version}

             

             

                   com.github.miemiedev

                   mybatis-paginator

                   ${mybatis.paginator.version}

             

             

                   com.github.pagehelper

                   pagehelper

                   ${pagehelper.version}

             

             

             

                   mysql

                   mysql-connector-java

                   ${mysql.version}

             

             

             

                   com.alibaba

                   druid

                   ${druid.version}

             

             

             

                   org.springframework

                   spring-context

                   ${spring.version}

             

             

                   org.springframework

                   spring-beans

                   ${spring.version}

             

             

                   org.springframework

                   spring-webmvc

                   ${spring.version}

             

             

                   org.springframework

                   spring-jdbc

                   ${spring.version}

             

             

                   org.springframework

                   spring-aspects

                   ${spring.version}

             

             

             

                   jstl

                   jstl

                   ${jstl.version}

             

             

                   javax.servlet

                   servlet-api

                   ${servlet-api.version}

                   provided

             

             

                   javax.servlet

                   jsp-api

                   ${jsp-api.version}

                   provided

             

             

             

                   commons-fileupload

                   commons-fileupload

                   ${commons-fileupload.version}

             

             

             

                   redis.clients

                   jedis

                   ${jedis.version}

             

             

             

                   org.apache.solr

                   solr-solrj

                   ${solrj.version}

             

        

    

    

         ${project.artifactId}

        

             

             

                   org.apache.maven.plugins

                   maven-resources-plugin

                   2.7

                  

                       UTF-8

                  

             

             

             

                   org.apache.maven.plugins

                   maven-compiler-plugin

                   3.2

                  

                       1.7

                       1.7

                       UTF-8

                  

             

        

        

             

                  

                  

                       org.apache.tomcat.maven

                       tomcat7-maven-plugin

                       2.2

                  

             

        

    


上面用的就是我们公司用的所有的jar包,注意这个taotao-parent的maven的工程的意义在于统一公司所有项目用的jar包的版本

所以他的特点就是不实现具体的jar包依赖,

只实现版本的控制:

 
  

加了这句话,我们就可以只控制版本,不实现具体的依赖。我们知道Maven的依赖需要三个坐标:




继承这个taotao-parent工程的项目,只需要两个坐标:



此时就不需要版本了,因为已经从继承中得到了版本号,所以不需要在定义
2.taotao-common

这个工程是存放公用的工具类:比如什么单元测试啊,json包什么的。因为公司的项目不会只有我们这么一个taotao项目用这些工具类,
别的项目也会有用的,所以我们呢把这些工具类统一出来。
建立过程如下:注意我们用的是jar.而且继承之前的taotao-parent工程。

技术分享

 

 












推荐阅读
  • Struts2+Sring+Hibernate简单配置
    2019独角兽企业重金招聘Python工程师标准Struts2SpringHibernate搭建全解!Struts2SpringHibernate是J2EE的最 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • 本文讨论了在shiro java配置中加入Shiro listener后启动失败的问题。作者引入了一系列jar包,并在web.xml中配置了相关内容,但启动后却无法正常运行。文章提供了具体引入的jar包和web.xml的配置内容,并指出可能的错误原因。该问题可能与jar包版本不兼容、web.xml配置错误等有关。 ... [详细]
  • 使用freemaker生成Java代码的步骤及示例代码
    本文介绍了使用freemaker这个jar包生成Java代码的步骤,通过提前编辑好的模板,可以避免写重复代码。首先需要在springboot的pom.xml文件中加入freemaker的依赖包。然后编写模板,定义要生成的Java类的属性和方法。最后编写生成代码的类,通过加载模板文件和数据模型,生成Java代码文件。本文提供了示例代码,并展示了文件目录结构。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
  • 在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板
    本文介绍了在Xamarin XAML语言中如何在页面级别构建ControlTemplate控件模板的方法和步骤,包括将ResourceDictionary添加到页面中以及在ResourceDictionary中实现模板的构建。通过本文的阅读,读者可以了解到在Xamarin XAML语言中构建控件模板的具体操作步骤和语法形式。 ... [详细]
author-avatar
手机用户2502923903
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有