初识Tomcat、Maven、Servlet

=============================================================================

启动Tomcat后一闪而过?

因为Tomcat进程是要绑定主机的8080端口,一个端口只能绑定一个进程,要不就是已经打开了Tomcat,重新再打开就会闪退,要不就是其他软件绑定了端口,导致Tomct不能使用该端口,

1.检查Tomcat是否启动成功?


1.任务管理器

通过任务管理器查看是否存在Tomcat这个进程

2.通过cmd命令查看8080端口是否被占用

在这里插入图片描述

这就是端口号被占用的情况

3.Tomcat网站

通过浏览器直接访问Tomcat欢迎页面 http://127.0.0.1:8080/

在这里插入图片描述

127.0.0.1是环回ip,环回ip就是代表本机,即Tomcat就是部署在本机上的

2.简单使用Tomcat


Tomcat 上可以部署静态或者动态资源

1.先创建一个文件,

2将文件放到Tomcat 里webapps中ROOT目录下

3.通过输入http://127.0.0.1:8080/(文件名及后缀)去访问

1.使用Tomcat部署静态页面

先写一个简单的HTML页面,将HTML文件放入webapps 中的ROOT目录下

通过输入路径 http://127.0.0.1:8080/(文件路径以及后缀)即通过Tomcat访问到HTML了。

在这里插入图片描述

但是你会产生疑惑,直接从本地打开HTML文件和Tomcat打开文件是一样的啊,有什么区别吗?这样就引出了我们使用Tomcat的目的,就是跨网络传输,我们从本地打开HTML文件只是自己能看见,部署在Tomcat最大的优势就是通过网络访问部署在Tomcat上的静态资源了,但是要保证两台主机连接同一局域网上,想要跨网连接,主机必须有公网ip,或者部署在云服务器上

2.使用Tomcat部署动态页面

依赖了Tomcat提供的一组API,称为Servlet

三、了解Maven

============================================================================

1.Maven是Java中“工程管理工具”

Maven具体的任务是让我们去创建一个“项目”,这里的项目是一个web项目、

wen项目是和其他项目是不同的,有一定的区别,

web项目的目录结构是有特定的要求

web项目中有特定的配置文件,配置文件中也有一些特定的内

2.Maven能够帮我们进行代码的“编译”“验证”“打包”“部署”等工作

3.Maven还能进行依赖管理,使用Maven就能自动引入第三方库

IDEA中内置Maven

四、使用Maven

============================================================================

1.cmd命令行通过Maven命令来使用,但是如果是内置的Maven就不能这样使用

2.在idea内使用

4.1创建一个项目


(1)在idea中新建一个项目 选择Maven选项(在idea中使用Maven)

(2)之后选择存放路径和文件名点next

创建好项目之后,Maven自动生成了这样的目录结构

在这里插入图片描述

src 源代码 main 里面放业务代码 test 里面放测试代码 resources存放源代码执行依赖的资源。蓝色图标是我们源代码的目录,绿色图标是我们测试代码的目录

我们需要补充目录结构来使用

1.main目录下添加webapp目录

2.webapp目录下添加 WEB-INF目录

3.在WEB-INF目录下添加web.xml文件

最终效果

在这里插入图片描述

这里结构创建正确Tomcat才能正确使用

4.2使用Maven进行打包


1.先找到Maven的窗口,右侧横条出找到Maven 点击

2.找到lifecycle生命周期,描述的是一个Maven项目的生命周期,从创建到最终发布的每一个过程

3.这里我们使用package进行打包,

在这里插入图片描述

出现这样的情况就是这次打包就成功了

在这里插入图片描述

最终在左侧目录多了一个target目录

最终显示了这个压缩包就是打包过程生成了

在这里插入图片描述

4.3使用Maven管理依赖


1.在中央仓库中找到我们需要的第三方库包找到Maven选项,

2.找到.xml标签文件进行拷贝到pom.xml中,

3.把拷贝的内容存放在dependencies标签中

在这里插入图片描述

如果显示红色的字段,就说明还没有下载好,等待一会就好了,

Maven会自动帮我们下载依赖

Maven默认有一个专门的目录来保存.jar包,一般是存在于这样的目录下的

在这里插入图片描述

我们一般把Maven在本地目录下存放.jar包的地方称位本地仓库

即Maven给我们提供的功能就是

1.创建项目

2.打包构建

3.下载依赖

五、了解Servlet

==============================================================================

Servlet是Tomcat给我们程序猿提供一组编程接口(API)。

Servlet是实现一种动态页面的机制,根据用户请求的参数不同,返回的结果就不同,每次响应都是根据请求实时计算出来的

Maven就是帮助我们使用Servlet,我们使用Servlet时,就是用Maven创建出一个web项目,也需要使用Maven帮我们下载Servlet依赖的.jar包,还需要借助Maven把代码打包。

5.1简单创建一个Servlet程序


1.创建项目,先使用idea创建Maven项目

2.修改目录结构,创建好了之后需要创建一些补充的结构,修改为以下结构

在这里插入图片描述

3.引入Servlet依赖~ ,将依赖放入pom.xml中的dependencies 标签中

在这里插入图片描述

这个标签标识当前这个.jar包只是在开发阶段参与的,在后序的部署阶段不参与使用。

部署把写好的代码放到服务器或者其他的电脑上去使用。

4.编写代码,可以编写代码了 在java目录下创建一个类 并让这个类继承于 ,如果没有报错就说明你.jar导入正确,注意:在Servlet中不需要写main方法

5.加上注解,在当前类前加上一个webServlet注解,参数是一个字符串 参数的含义是 当前类在URL路径为(/字符串名)的时候被调用 即 如果Tomcat收到的请求中带有/字符串名这样的路径,就会触发这个类里面的方法,具体为哪个方法,就是看收到的请求是GET还是POST请求,

在这里插入图片描述

6.打包运行,使用Maven的中的打包选项 ,注意Maven 打包的是.jar包,而Tomcat识别的是.war包 我们只需要加上一个标签即可修改,在pos.xml中加上packaging标签 如图

在这里插入图片描述

还能修改当前打包的名字 ,使用下图的标签

在这里插入图片描述

7.部署就是把war包拷贝到Tomcat的webapps目录中就可以了

8.验证 ,在浏览器中进行验证 输入 http://127.0.0.1:8080/helloServlet-1.0-SNAPSHOT/hello

在这里插入图片描述

将war包导入webapps中自动进行解压缩,填写url是要将路径写对

最终实现了一个最简单的Servlet代码

在这里插入图片描述

书写一个简单的代码的流程:

1.创建一个类,并继承于HttpServlet

2.重写父类的doGet方法

3.在doGet方法里面在执行一些我们想要的代码

解释当前Servlet中一些类功能: HttpServlet表示当前webapp的一个功能模块 主要是重写这个类的方法

HttpServletRequest 表示这一次HTTP请求的内容

HttpServletResponse 表示这一次HTTP响应的内容

在Servlet中,是如何调用到具体的代码

Tomcat收到HTTP请求,分析HTTP请求的关键信息:

1.URL中的path,path 是否为webapps目录下某个路径,

2.URL的第二级path是否为webapp下的某个类里面的注解所对应的路径,确定了该webapp下的某个Servlet类

3.再根据当前是GET请求还是POST请求,确定调用Servlet类里面的doGet还是doPost

5.2在浏览器中显示页面


前面介绍的流程没有构造HTTP响应浏览器还是空白页,我们要把HTML页面代码返回给浏览器

在这里插入图片描述

在这里插入图片描述

基础格式

在这里插入图片描述

pos.xml 中存放

Archetype Created Web Application

引入自己想要的依赖 在Maven Repository中

修改格式

war

修改名称

addServlet

修改为java1.8的格式

UTF-8

<maven.compiler.source>1.8</maven.compiler.source>

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

最后

现在正是金三银四的春招高潮,前阵子小编一直在搭建自己的网站,并整理了全套的**【一线互联网大厂Java核心面试题库+解析】:包括Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等**

image
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
e5c14a7895254671a72faed303032d36.jpg" alt=“img” style=“zoom: 33%;” />

最后

现在正是金三银四的春招高潮,前阵子小编一直在搭建自己的网站,并整理了全套的**【一线互联网大厂Java核心面试题库+解析】:包括Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等**

[外链图片转存中…(img-bcifCC7B-1713540610456)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 17
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值