Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用。对于一个java初学者来说,Tomcat是最好的选择。
诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
1、去官网下载 :
官网 :https://tomcat.apache.org/
2、 解压
3、文件夹说明
4、启动和关闭 Tomcat (双击文件)
浏览器访问 : localhost :8080/
浏览器 访问localhost:8080默认访问了 Tomcat webapps 文件夹下的root 文件夹(root web程序)中的index.jsp
java 环境变量配置有问题
参考博客 :https://blog.csdn.net/gaoyijun8/article/details/85041780
解决方法如下:
打开 conf 路径下的 logging.properties 中红色区域的编码改为GBK即可。
可以配置启动的端口号
Tomcat 默认端口号 :8080
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
可以配置主机名称
默认的主机名称是 localhost == 127.0.0.1
默认网站存放的位置 :webapps
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
网站应该有的结构
- webapps :Tomcat 的 web 目录 - ROOT :Tomcat 默认的程序 - firstDemo :网站的目录名 - WEB-INF - web.xml : 配置文件 - lib :web程序所依赖的jar包 - classes : java程序 - index.html :项目的首页 - static :静态资源目录 - css - js - img
maven中文意思“专家、内行”,是一个项目构建工具,可以对java项目进行构建、依赖管理。也可以对其他语言的项目进行管理。约定大于配置
在javaweb开发中,需要导入大量的 jar包,maven可以帮我们自动导入和配置jar包
前言 :
Maven 和 jdk 的版本 :
官网地址 :https://maven.apache.org/download.cgi
解压即可 :
M2_HOME 指向 maven 目录下的bin目录 (springboot 和 springcloud 中会用到)
MAVEN_HOME 指向 maven的目录
在系统的path中配置 %MAVEN_HOME%\bin
dos 窗口测试是否 配置成功 :
conf – > setting.xml
<!-- 在setting.xml文件中150行左右 :--> <mirror> <id>aliyun</id> <mirrorOf>*</mirrorOf> <name>aliyun Maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror>
本地仓库 :在程序员的笔记本上
中央仓库(远程仓库) :服务器在国外,在互联网上,存放了基本上所有开源的jar包
镜像仓库 :国内的中央仓库,比如阿里云的。
<!-- 在setting.xml 文件中50行左右 :--> <localRepository>E:\study_software_framework\apache-maven-3.8.2\maven-repo</localRepository>
maven的文件夹
1、启动 idea
2、使用 Maven 模板创建一个 Maven web 项目
3、等待项目初始化完毕
4、观察 Maven 仓库
5、idea 中 maven的配置 :
idea 创建项目成功后,查看一下 maven的配置
注意
:项目自动创建完成后,尤其是在springboot项目中 MavenHome 会使用 IDEA 默认的 maven,我们需要手动改为我们自己的maven 。
创建一个普通的 maven 项目
可以看出,使用maven 模板创建的web项目,main 文件夹下面缺少两个文件夹(java、resources),所以我们给他创建出来 ;
设置文件夹
<?xml version="1.0" encoding="UTF-8"?> <!--maven 版本和头文件--> <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> <!-- 这里就是我们创建项目的gav --> <groupId>com.hkp</groupId> <artifactId>javaweb-maven</artifactId> <version>1.0-SNAPSHOT</version> <!-- package 打包方式 : war : javaWeb 应用 jar : java 应用 --> <packaging>war</packaging> <!--配置--> <properties> <!-- 项目默认的构建编码--> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- 编码版本--> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> </properties> <!-- 项目依赖--> <dependencies> <!-- 具体依赖的jar 包配置文件--> <!-- maven 的高级之处在于,他会帮你导入这个jar包所依赖的其他jar 包--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>javaweb-maven</finalName> <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) --> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>3.1.0</version> </plugin> <!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging --> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.0</version> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>3.2.2</version> </plugin> <plugin> <artifactId>maven-install-plugin</artifactId> <version>2.5.2</version> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> </plugin> </plugins> </pluginManagement> </build> </project>
由于maven约定大于配置,有时候我们写的文件会遇到 无法导出或生效的问题 :
解决方案 :
<!--在build中配置resources,来防止我们资源导出失败的问题--> <build> <resources> <resource> <directory>src/main/resources</directory> <excludes> <exclude>**/*.properties</exclude> <exclude>**/*.xml</exclude> </excludes> <filtering>false</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
为什么会有这个警告?
我们访问一个网站,必须指定一个文件夹 ;例如 :在本地的时候,Tomcat是使用 webapps 文件夹存放的 ,idea没有默认的,所以我们给他新建一个。
解决警告 :
启动 Tomcat