Servlet的简单理解
2020-08-19 10:22:24 21 举报
AI智能生成
Servlet的简单理解
作者其他创作
大纲/内容
技术基于
博文写于2012年
彼时Eclipse和jsp都是常用且基础的东西
http协议
Servlet容器
tomcat
Servlet-api.jar
最基本的java web项目所需
大部分是接口,加一些工具类
所有的Servlet容器都有这个包
两个包,javax.servlet 和 javax.servlet.http
重要接口
HttpServlet
ServetConfig
ServletContext
Filter
FilterConfig
FilterChain
RequestDispatcher
HttpServletRequest
HttpServletResponse
HttpSession
一些 Listenser 类
web.xml
每个 servlet 都必须在 web.xml 中定义并进行 URL 映射配置
Filter 过滤器
关系说明
Servlet 是 J2EE 最重要的一部分
Servlet 规范其实就是对 HTTP 协议做面向对象的封装
HTTP协议中的请求和响应就是对应了 HttpServletRequest 和 HttpServletResponse 这两个接口
通过 HttpServletRequest 来获取所有请求相关的信息,包括 URI、Cookie、Header、请求参数等等,别无它路
HttpServletResponse接口是用来生产 HTTP 回应,包含 Cookie、Header 以及回应的内容等等
Session
HTTP 协议里是没有关于 Session 会话的定义
根据 HTTP 协议的无状态这种特点而产生的
实现就是服务器端的一个哈希表,哈希表的Key就是传递给浏览器的名为 jsessionid 的 Cookie 值
当需要将某个值保存到 session 时
获取 jsessionid 值,没有的话就生成一个,也就是 request.getSession() 这个方法
拿到的 HttpSession 对象实例就相当于一个哈希表,你可以往哈希表里存放数据(setAttribute)
你也可以通过 getAttribute 来获取某个值
名为 jsessionid 的 Cookie 在浏览器关闭时会自动删除
JSP
任何一个 JSP 页面在执行的时候都会编译成一个 Servlet 类文件
JSP 比 Servlet 方便的地方在于可直接修改立即生效,不像 Servlet 修改后必须重启容器才能生效
JSP 适合用来做视图,而 Servlet 则适合做控制层
0 条评论
下一页