Java体系知识复习之Tomcat服务器&Maven项目管理工具

197 阅读2分钟

Java体系知识复习之Tomcat服务器&Maven项目管理工具

1 Tomcat服务器

1.1 内容描述

 (1)Apache下的一个项目
 (1)技术先进、开源免费

1.2 目录结构

 (1)bin目录:***
     startup.bat:启动服务器
     shutdown.bat:关闭服务器
 (2)conf目录:***
     web.xml:核心配置文件
     server.xml:大约69行位置,可修改Tomcat默认端口号,但不建议修改
 (3)lib目录:
     Tomcat运行时依赖的一些jar文件
 (4)logs目录:
     日志
 (5)temp目录:
     临时文件
 (6)webapps目录:
     被运行的项目,此位置的项目可直接被访问到
 (7)work目录:
     运行的JSP文件,了解即可

2 Maven

2.1 基础介绍

 (1)开源的软件项目管理工具
 (2)将软件开发和项目的管理结合起来,项目对象模型  POM   Project Object MOdel
 (3)约定大于配置
 (4)有JDK、Tomcat工具,但是不使用它

2.2 工具使用

 (1)管理jar包
 (2)管理依赖
 (3)解决jar包依赖
 (4)解决jar包版本冲突
 (5)解决项目构建问题

2.3 Maven仓库

 (1)在Maven中,依赖、插件、项目,称为构件
 (2)在某个位置存储所有Maven项目共享的构件,这个位置就是仓库
 (3)Maven仓库:
     本地仓库:
         只有一个;
         电脑上的一个仓库,由程序员自己维护;
         最开始的本地仓库是空的;
 ​
     远程仓库:
         中央仓库:
             外网;
             是默认的远程仓库;
             包含了绝大部分开源的构件;
             由Maven官方维护;
             国内一般将中央仓库设置为阿里云镜像; 下载更快
             
         私服:
             内网;
             一种特殊的远程仓库;
             
         其他公共库:
             了解
 (4)仓库:
     若本地仓库有,则直接使用;
     若本地仓库没有,则看私服上是否有对应内容,若有,则使用;
     若私服上没有,则去中央仓库找;

3. Maven配置(重点)

3.1 settings.xml文件

 (1)大约50行的位置,指定本地仓库的地址:
     <localRepository>E:/repository</localRepository>
 (2)大约150行的位置,配置阿里云镜像地址:
     <mirror>    
         <id>alimaven</id>   
         <mirrorOf>*</mirrorOf>  
         <name>aliyun maven</name>   
         <url>
             http://maven.aliyun.com/nexus/content/repositories/central/
         </url>
     </mirror>

3.2 创建Maven项目

 (1)src->main->java:
     Java源代码
 (2)src->main->resources:
     资源文件
 (3)src->main->webapp:
     静态文件
 (4)test:
     测试代码
 (5)target:
     运行代码

4 pom.xml

 <!--坐标依赖-->
     <dependencies>
         <!-- https://mvnrepository.com/artifact/junit/junit -->
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
             <scope>test</scope>
         </dependency>
 ​
         <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <version>5.1.37</version>
         </dependency>
 ​
         <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
             <version>1.18.20</version>
             <scope>provided</scope>
         </dependency>
 ​
         <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>javax.servlet-api</artifactId>
             <version>4.0.1</version>
             <scope>provided</scope>
         </dependency>
 ​
         <!-- https://mvnrepository.com/artifact/commons-dbutils/commons-dbutils -->
         <dependency>
             <groupId>commons-dbutils</groupId>
             <artifactId>commons-dbutils</artifactId>
             <version>1.7</version>
         </dependency>
 ​
     </dependencies>

5 Maven一键命令

 (1)clean命令:清除产生的target文件夹
 (2)compile命令:编译,生成class文件
 (3)test命令:支持一下测试所有的单元测试代码
 (4)package命令:将项目打包
 (5)install命令:将项目安装到本地仓库中

6 Maven依赖作用范围

 (1)compile:编译、运行、测试均有效
 (2)provided:编译、测试时有效,比如servlet-api
 (3)runtime:运行测试时有效
 (4)test:只在测试时有效