Servlet/Jsp学习总结

首先先明确servlet是用来处理客户端请求的

servlet的作用:      

    1.获取表单数据
    2.获取浏览器附加信息
    3.处理数据(在servlet中调用其它的处理数据方式来完成,如jdbc rpc等)
    4.给客户端产生一个响应
    5.在响应中添加附加信息

浏览器与服务器会话状态信息

cookie:  分为 会话cookie(随浏览器关闭而结束) 和 持久化cookie(持久化到本地,可以通过cookie.setMaxAge(2000)设置有效时长)
    存在于客户端浏览器,每一次请求都会将有效的cookie发送给服务器 所以cookie有数量限制(具体数量与不同浏览器有关)
session:  分为两部分 sessionid与session(键值对的关系) 存在服务器端,服务器通过cookie将sessionid发送给浏览器,
    所以可以在不同请求间传递信息  1.关闭tomcat 2.reload web应用 3.session时间到 (在web.xml中配置)4invalidate  session(方法调用强制失效

servlet的实例化:

容器利用Java反射实例化servlet对象
类反射加载机制:Class clazz=Class.forName("类名")   或者用一个实例对象getClass()方法 加载类
进行了IO类加载以及静态成员初始化操作
    Servlet obj=clazz.newInstance()在堆内存完成所有成员变量初始化创造对象
    obj.init();

servlet 生命周期

    servlet生命周期是由容器管理
     分为三个阶段: init初始化 service 服务 destroy 销毁
    当客户端浏览器第一次请求该servlet时,Tomcat会立即创建该servlet对象,并立即调用init()完成初始化 并且在新的线程中调用service()方法。
    Tomcat会对已经实例化的servlet对象进行缓存,当有客户端浏览器再次请求该servlet,容器不会再次创建servlet对象,而是在一个新的线程中调用service()方法。

     在容器关闭时, 容器会在servlet对象销毁之前调用一次destroy()方法

//servlet可以在web.xml中配置,使其在容器启动时初始化,不必依赖于请求而创建

cookie和session:

HTTP是无连接的不能记录状态信息,而在一些场景下需要这些状态信息(记住用户名,验证是否已经登陆,验证码等信息)
所以记录客户端状态,识别请求状态需要cookie session
cookie:  分为 会话cookie(随浏览器关闭而结束) 和 持久化cookie(持久化到本地,可以通过cookie.setMaxAge()设置有效时长 单位为Second秒)
    存在于客户端浏览器,每一次请求都会将有效的cookie发送给服务器 所以cookie有数量限制(具体数量与不同浏览器有关)
session:  分为两部分 sessionid与session(键值对的关系) 存在服务器端,服务器通过cookie将sessionid发送给浏览器, 所以可以在不同请求间传递信息 

session失效方法:1.关闭tomcat 2.reload web应用 3.session时间到 (在web.xml中配置)4invalidate  session(方法调用强制失效)

JSP:

(jsp引擎编译为一个servlet文件 其实本质和servlet相同 在客户端第一次请求时,或者jsp被修改时编译)
三种原始标签:(作为Java编译)
    1.声明:<%!  %> jsp编译后的Java源文件中的类下
    2.赋值:<%=   %> jsp编译后的Java源文件中的字符输出流方法中(切记,不要加分号)
    3.脚本:<%      %> jsp编译后的Java源文件中的jspServices方法中
jsp指令标签:  
    1.<%@ page launguae="java" import="java.util.*"  pageEncoding="utf-8"%>
    2.<%@ include  %>

jsp内置对象(暗对象):
    jsp已经为我们创建好的对象(9个):
    jsp中                servlet中
    request            HttpServletRequest         作用域一次请求
    response         HttpServletResponse         
    application       ServletContext                 全局作用域
    session            HttpSession                     随浏览器关闭而失效
    config               ConfigContext         
    out                    PrintWriter
    exception         Throwable
    pageContext
    page

servlet和jsp本质时一样的,只是jsp对于展示更加擅长 相当于mvc中的view 而servlet则相当于controller
它默认内容是在printwriter流中(相当于servlet的printwriter()中) 通过标签来确定Java代码作用域

本人新人小白,有错误欢迎指出

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值