史上最难HelloWorld

Tomcat

Tomcat就是一个HTTP服务器,HTTP协议是前后端交互的桥梁,前端就是浏览器,后端就是一个HTTP服务器,在Java中最常用的HTTP服务器就是Tomcat。

大家可以去这里下载Tomcat Tomcat官网

下载完成后找到下载的Tomcat中的bin目录双击
在这里插入图片描述
就可以运行Tomcatz,.bat后缀的,是Windows的批处理文件,还有一个.sh后缀的,是Linux/mac的shell脚本。

在这里插入图片描述
看到这个界面Tomcat就启动成功了。

Servlet

Servlet是什么呢?他是由Tomcat提供给程序员的API,用来帮助程序猿操作HTTP协议的。Servlet并非都是由程序猿写完的,我们自己写的仅仅是一个小的代码片段,并把他镶嵌到Tomcat中。

创建一个项目

首先我们需要创建一个Maven项目,Maven可以把他看作一个应用商城,它可以帮助我们快速引入第三方库。
在这里插入图片描述
创建好后的界面如下
在这里插入图片描述

引入依赖

我们需要在Maven的中央仓库中找到Servlet的依赖,复制蓝底的那一段代码到我们创建的Maven文件的pom.xml中,这样就引入了Servlet依赖。
在这里插入图片描述
在这里插入图片描述
第三方依赖都需要放在<dependencies></dependencies>这对标签里面。

创建目录

除此之外我们还需要创建一个目录:
在这里插入图片描述
再次强调一下,这里目录的名字也必须和我一样。

编写代码

在这里插入图片描述
我们创建一个类并继承HttpServlet这个类,同时重写方法doGet,第一个输出是在控制台中输出,服务器端可以看见吗,客户端看不见,第二行代码是向响应的body中写入hello world字符串,这个内容就会随着响应返回给客户端浏览器上,并显示出来,我们还可以进行一下设置。
在这里插入图片描述
对响应中body的编码方式进行设置。

打包

在这里插入图片描述
进行上面的操作之后我们就可以看见左边资源管理器中多出来了一些东西:
在这里插入图片描述
此时一个.jar包就打好了,但是有一个问题普通的Java程序打成jar包没有问题,但是要部署给Tomcat的程序我们需要达成war包,如何操作呢。

在这里插入图片描述

部署

部署很简单,就是把对应打好的war包拷贝到tomcat的webapps目录中就可以了。
在这里插入图片描述

验证

我们需要向自己的HTTP发送一个请求,这样才会执行doGet方法,注意URL需要匹配才可以。

在这里插入图片描述
注意此时我们使用的URL:
1、helloServlet,成为Context Path / Application Path,表示了一个webapp,也就是war包的名字
2、hello,成为Servlet Path,标识当前请求要调用那个Servlet类的doGet。
在这里插入图片描述
上面我们就完成了使用Servlet在前端页面上打印一个hello world。

优化一下打包和部署-Smart Tomcat

在真正进行部署项目的时候需要使用上面的打包和部署的方法,那日常开发中想要一边写一边测试代码是否有问题也这么麻烦嘛?

当然不会的,程序猿都是非常怕麻烦的,我们可以使用一个工具Smart Tomact
在这里插入图片描述
这里我是下好的,如何大家没有可以先下载一下
在这里插入图片描述
在这里下载即可,下载完成使用时需要进行一下配置
在这里插入图片描述
在这里插入图片描述
此时运行程序,同样在前端页面和服务器上都打印了hello world。

Servlet常见的问题

404
检查一下以下问题:
1、请求的路径是否写对
2、路径写对了,war包是否正确加载,查看Tomcat日志

405
1、发送的请求的方法和代码不匹配
2、忘记干掉父类方法了

500
意味这服务器的代码抛出异常了,观察一下异常的调用栈。

空白页面
服务器没有返回任何数据

无法访问此网站
检查一下网络

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悲伤猪小猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值