JavaWeb-复习回顾(上)

一、JavaEE和JavaWeb的区别

什么是javaEE呢?
javaEE包含两个部分:B/S(浏览器/服务器)架构以及C/S(客户端/服务器)架构 
而JavaWeb属于B/S架构,是基于浏览器的,所以可以说javaEE包含了JavaWeb

两者使用的服务器也不同:
javaweb使用的服务器是Tomcat
JavaEE使用的服务器是TomEE

二、项目创建的两种方式

静态创建动态创建
了解即可借助Idea软件,参考博客:javaweb项目创建

三、三大组件

ServletFilterLisenter
接收、处理、响应用户请求过滤器,拦截请求监听器,监听某一行为

四、请求和响应

请求响应
组成请求头、请求体(get没有,post有)响应头、响应体(又称响应正文)

五、创建Servlet的三种方式

创建方式实现Servlet接口继承GenericServlet抽象类继承HTTPServlet抽象类 (开发常用)
所属包javax.servletjavax.servletjavax.servlet.http
区别能够看到Servlet的生命周期,但是比较繁琐跟前一个相比,继承该类后只需要实现其中的service方法避免了重写多个方法,只需要重写doGET和doPOST来处理请求(后续不再需要手动创建Servlet类,可以使用快捷的方式)

六、配置Servlet

方式WEB-INF/web.xml在Servlet类上
操作使用标签的方式完成Servlet的配置,但是过于繁琐通过在类上方添加注解的方式(后续使用较多)

七、Servlet其他对象

名称ServletConfigServletRequestServletResponse
在init()函数中请求对象创建响应对象创建
常见方法------getParameter(String name) 根据请求参数name拿到请求参数的值getWriter() 得到字符响应输出流,可以往页面写内容

八、url-pattern

/字符串/字符串/**.字符串/*
精准匹配到字符串前缀匹配,只要前面是该字符串的都会匹配到后缀匹配,以该字符串结尾的都会匹配到匹配所有

九、application域对象ServletContext

\
生命周期 =>跟随Tomcat,Tomcat启动时创建,关闭时销毁
作用范围 =>由于是application域的对象,所以在整个项目中都有效
存放内容=>存放的是 key=value 的键值对,key为String类型,value为Object类型
创建方式=>通过ServletConfig的getServletContext()方法得到直接通过this.getServletContext()方法获得

十、常见请求码

200304404405400500
成功转发资源不存在不支持请求方式失败请求服务器内部错误

十一、转发和重定向

名称转发重定向
区别转发到一个页面后存在request域中的值还是能够访问到重定向到一个页面后存在request域中的内容将不能够被访问
使用场景数据存活周期短,只在一次请求中有效除了前面的情况外,其他都用该方法
共同点都可以进行页面的跳转

十二、jsp

1、jsp中java脚本的写法

语法<% %><%= %><%! %>
作用java能够写的代码这里都能写,也可以调用response,不能定义属性将表达式的结果在页面展示如a+1,不能写if语句定义属性,定义方法 如private int b=10

2、jsp中三大指令

pagetaglibinclude

十三、session域对象HTTPSession

获取方式保存和获取的方法删除的方法session存活时间
request.getSession()setAttribute(),getAttribute()invalidate默认存活时间为30分钟

javaweb常见面试题

1、Servlet的生命周期

1Servlet默认情况下是第一次请求发起时有Tomcat创建
2、先调用init()函数,由Tomcat创建,只调用一次,又叫做生命周期函数
3、用户每请求一次ServletTomcat都会调用一次service()函数
4、在Tomcat关闭时销毁所有的对象,包括Servlet,而在Servlet销毁之前会调用destroy()函数,
   释放资源,只执行一次

2、四大域对象

<作用范围从大到小>

名称applicationsession(常用)request(常用)page
作用范围整个项目都有效在同一次会话中有效(从浏览器打开开始到关闭结束)在同一次请求中有效(只有请求了该页面才能够有效)在同一个页面有效

3、jsp九大内置对象

都可以直接使用,不需要创建

四大域对象applicationsessionrequestpageContext
响应对象response
响应流对象out
配置对象config
表示thispage
异常exception

4、session工作原理

服务器会为用户创建一个Session对象,
并且把sessionId以cookie的方式保存在用户浏览器中,
用户每次发送请求都会把cookie和JSESSIONID带回服务器

服务器拿到cookie中的JSESSIONID后到session池中进行匹配
得到对应的session对象,这样服务器就知道当前请求是哪个会话
的

如果客户端的cookie被删除了,那么请求不会带Jsessionid,那么服务器就无法匹配到session池中的对象,而30分钟后该session中的对象就会自动销毁

如果服务器把session删除了,那么就算客户端有sessionid的cookie,也无法得到session池中对应的session对象,这时服务器会重新创建一个新的session并将新的sessionid以cookie的形式保存进客户端
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值