Javaweb-Tomcat&Servlet

web相关概念

一、软件架构
1.C/S:客户端/服务器端
2.B/S:浏览器/服务器端
二、资源分类
1.静态资源:所有用户访问后,得到的效果都是一样的。静态资源可以直接被浏览器解析。如:html,css,JavaScript
2.动态资源:每个用户访问相同资源后,得到的结果可能不一样。动态资源被访问后,需要先转换为静态资源,再返回给浏览器。如:servlet/jsp,php,asp……
三、网络通信三要素
1.IP:电子设备(计算机)在网络中的唯一标识。
2.端口号:应用程序在计算机中的唯一标识。0-65536
3.传输协议:规定了数据传输的规则。
基础协议:
tcp:安全协议,三次握手。速度慢。
udp:不安全协议,可能会丢失数据。速度快。

web服务器软件

什么是服务器?
安装了服务器软件的计算机,本质仍是一台电脑。
服务器软件:接受用户的请求,处理请求,做出相应。
web服务器软件:可以部署web项目,让用户通过浏览器访问。有时成为web容器
常见的java相关的web服务器软件:
在这里插入图片描述
JavaEE:Java语言在电脑客户端、web开发、安卓app开发中使用技术规范的总和,一共规定了13项大的规范。

Tomcat:web服务器软件。
下载、安装、卸载、启动、关闭、配置
下载地址:http://tomcat.apache.org/
安装:解压压缩包即可。安装目录不要有中文和空格
卸载:删除即可
目录结构:在这里插入图片描述
启动:双击bin目录下的startup.bat文件,访问时不要关闭该文件,浏览器输入http://localhost:8080回车访问自己的tomcat,输入http://别人的ip:8080回车访问别人的tomcat。
启动时可能遇到的问题:
①黑窗口一闪而过:
原因:没有正确配置JAVA_HOME环境变量
②启动报错:
解决方案:
方法一:找到占用的端口号,并且找到对应的进程,杀死该进程。进入cmd,输入netstat -ano|findstr 8080,找到占用端口号的pid数字,输入taskkill /pid pid数字 /f
方法二:修改自身的端口号。在conf下的server.xml文件中修改()。一般会将tomcat的默认端口号修改为80。80端口号是http协议的默认端口号,在访问时可以不用输入端口号。(不建议)

关闭:
①强制关闭:点❌
②正常关闭:运行bin/shutdown.bat,或者在startup.bat文件中按ctrl+c

配置:
✳部署项目的方式:
①直接将项目放在webapps目录下即可。访问时输入localhost/虚拟目录(项目访问路径)/资源名。简化部署:将项目打成一个war包,再将war包放到webapps目录下,war包会自动解压缩。
②配置conf/server.xml文件,标签体中,输入
②在conf/Catalina/localhost创建任意名称的xml文件,在文件中编写虚拟目录为xml文件的名称(不含.xml)。
✳静态项目和动态项目:
在这里插入图片描述

热部署
在这里插入图片描述

Servlet

概念:运行在服务器端的小程序。
Servlet就是一个接口,定义了java类被浏览器访问到(tomcat识别)的规则。
将来自定义一个类,实现Servlet接口,复写方法。

快速入门:
1.创建javaEE项目
2.定义一个类,实现Servlet接口
public class 类名 implements Servlet
3.实现接口中的抽象方法
4.配置servlet
在这里插入图片描述

执行原理:
在这里插入图片描述
1.当服务器接收到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径
2.查找web.xml,是否有对应的标签体内容。
3.如果有,则在找到对应的全类名
4.tomcat会将字节码文件加载进内存,并且创建其对象。
5.调用其方法。

Servlet中的声明周期:
1.被创建:执行init方法,只执行一次
默认情况下,第一次被访问时,servlet被创建。可以配置执行Servlet的创建时机
在这里插入图片描述
在这里插入图片描述
2.提供服务:执行service方法,执行多次
每次访问Servlet时,Service方法都会被调用一次。
3.被销毁:执行destroy方法,只执行一次
Servlet被销毁时执行。只有服务器正常关闭时,才会执行destroy方法。且该方法在Servlet被销毁之前执行,一般用于释放资源。
Servlet中的五个方法:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
servlet3.0
在这里插入图片描述
IDEA与tomcat的相关配置:
在这里插入图片描述
Servlet的体系结构:
Servlet(接口)---->GenericServlet(抽象类)---->HttpServlet(抽象类)
GenericServlet:将Servlet接口中其他的方法做了默认空实现,只将service()方法作为抽象。将来定义Servlet类时,可以继承GenericServlet,实现service()方法即可。
HttpServlet:对http协议的一种封装,简化操作。
1.定义类继承HttpServlet
2.复写doGet或者doPost方法。

Servlet相关配置:
1.urlpattern:Servlet访问路径
✳一个Servlet可以定义多个访问路径:@webServlet({"/d4","/dd4",“ddd4”})
✳路径定义规则:
①/XXX(主)
②/XXX/XXX:多层路径,目录结构。如果定义/XXX/✳,则/后面可以写任意字母。
③*.do:前面不可以加/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值