jsp课堂笔记5 Java servlet
- servlet的创建
- servlet类就是一个包含javax.servlet.http包中的HttpServlet类
- 部署web.xml文件
- 在<sevlet>标签中创建
- <servlet-name>创建servlet的名字
- <servlet-class>标记用哪一个类来创建servlet
- 在<servlet-mapping>中创建请求该servlet的URL
- <servlet-name>已经创建的servlet的名字
- <url-pattern>/设置URL路径
- servlet工作原理
- servlet是javax.servlet包中HttpServlet类的子类的一个实例、由服务器负责创建并完成初始化工作。当多个用户请求一个servlet时,服务器为每个用户启动一个线程而不是启动一个进程,这些线程由服务器来管理,与传统的CGI为每个用户启动一个进程相比较,效率要高的多。
- 初始化servlet ,在servlet子类中重写init();只在第一次使用servlet时调用
- service(); 响应用户对servlet的请求,不同用户请求会在多线程中调用,互不影响
- destroy(); 当服务器终止服务时,比如关闭服务器等,destroy()方法会被执行,消灭servlet。
- jsp页面访问servlet:
- 如果web.xml文件中<servlet-mapping>标记的子标记<url-pattern>指定的请求servlet的格式是“/lookHello”,那么JSP页面请求servlet时,必须要写成 “lookHello”,不可以写成“/lookHello”,否则将变成请求root服务目录下的某个servlet。
- 共享变量:对于Servlet类所创建的servlet的,用户将共享该servlet的成员变量
- doGet和doPost:可以在Servlet类中重写doPost或doGet方法来响应用户的请求,这样可以增加响应的灵活性,并降低服务器的负担。
- doGet和doPost可以让servlet更加灵活,也就是原本的service函数的更细化
- 如果service和doGet和doPost同时存在,那么直接调用的是service
- 重定向与转发
- 重定向:response.sendRedirect("2.jsp");
- 转发:
- 得到RequestDispatcher对象:RequestDispatcher dispatcher=request.getRequestDispatcher("4.jsp");
- 转发:dispatcher.forward(request,response);
- 重定向和转发的区别可以看为是
- 重定向只是对处理结果后返回的页面,返回的页面没有get或post请求,就像登录成功后跳转到首页
- 转发是指把请求转移到另一个页面,也就是说改个URL而已,真正的被隐藏了
- session
- HttpSession session=request.getSession(true); //获取用户的session对象
jsp课堂笔记5 Java servlet的更多相关文章
- 【Head First Servlets and JSP】笔记3:Servlet的生命周期
1.servlet的存在就是要为客户服务.servlet的任务就是得到一个用户的请求,再发回一些响应. 请求可能很复杂,也可能很简单,例如,“为我的购物车结账”,这个请求携带了一些重要的数据,你必须知 ...
- jsp课堂笔记2
jsp页面的基本结构 jsp标记 普通html标记 变量和方法的声明 java程序片 java表达式 变量和方法的声明 <%! %> 标记符号之间声明变量和方法 成员变量即全局变 ...
- jsp课堂笔记4 javabean
Javabean是一个可重复使用的软件组件,实际上是一种java类 实现代码重复利用 易编写易维护易使用 jsp页面的主要任务是显示页面,不负责数据的逻辑业务处理 将数据处理过程中指派一个或多个bea ...
- jsp课堂笔记3
Http协议是一种无状态协议,一个用户向服务器发出请求(request),然后服务器返回响应(response),在服务端不保留链接相关信息.session对象可以使服务器记住当前用户 reque ...
- 艾编程coding老师课堂笔记:java设计模式与并发编程笔记
设计模式概念 1.1 什么是设计模式 设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路.它不是语法规定,而是一套用来提高代码可复用性.可维护性.可读性. ...
- 课堂笔记【java JDBC】
目录 JDBC简介 工作原理: 工作过程: JDBC驱动与连接 JDBC驱动 连接JDBC驱动 1.下载特定数据库的JDBCjar包 2.加载并注册数据库驱动 3.连接驱动 JDBC常见API JDB ...
- jsp课堂笔记1
http协议:规范浏览器和服务器交互或通信的规则 https:基于http实现,比http更加安全,提供了身份验证和通信内容加密 服务器:1.配置比较高的电脑 2.他就是一个应用 http1.0: ...
- Servlet视频学习笔记 57-58 (servlet入门和调用过程)
网易云课堂<30天轻松掌握JavaWeb视频>servlet部分 课时57 servlet开发入门 servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术.S ...
- JSP学习笔记(二):动作元素
与JSP指令元素不同的是,JSP动作元素在请求处理阶段起作用.JSP动作元素是用XML语法写成的. 利用JSP动作可以动态地插入文件.重用JavaBean组件.把用户重定向到另外的页面.为Java插件 ...
随机推荐
- Python3-socketserver模块-网络服务器框架
Python3中的socketserver模块简化了编写网络服务器的任务 在实际的开发中,特别是多并发的情况下,socket模块显然对我们的用处不大,因为如果你要通过socket模块来实现并发的soc ...
- 千金良方说:"我现在奉上179341字的MySQL资料包,还来得及吗?有"代码段、附录、和高清图!!"
上一篇"上发布过"一不小心,我就上传了 279674 字的 MySQL 学习资料到 github 上了",我在更早之前,在微信公众号"老叶茶馆"上发布 ...
- c语言二维数组的转置
#include <stdio.h> #include <string.h> #include <stdlib.h> #define maxsize 3 #defi ...
- 深度学习“四大名著”发布!Python、TensorFlow、机器学习、深度学习四件套!
Python 程序员深度学习的"四大名著": 这四本书着实很不错!我们都知道现在机器学习.深度学习的资料太多了,面对海量资源,往往陷入到"无从下手"的困惑出境. ...
- Python3笔记013 - 3.4 循环语句
第3章 流程控制语句 3.4 循环语句 1.while 循环 # 带else的while循环,循环结束后执行,根据需要取舍else while 条件表达式: 循环体 else: 语句 a = 0 wh ...
- HTML条件注释_关于IE条件注释
普通的HTML注释形式是 <!-- 注释 --> 而IE5~IE9这5个版本的IE浏览器还另外支持一种特殊的if条件注释(感觉有点类似模板渲染时的语法结构) <!--[if IE]& ...
- requirejs之demo
具体的理论就不讲了,可以参考 http://www.ruanyifeng.com/blog/2012/10/javascript_module.html http://www.ruanyifeng.c ...
- JavaScript图形实例:Hilbert曲线
德国数学家David Hilbert在1891年构造了一种曲线,首先把一个正方形等分成四个小正方形,依次从西北角的正方形中心出发往南到西南正方形中心,再往东到东南角的正方形中心,再往北到东北角正方形中 ...
- unity vscode 断点问题
困扰了很久的vscode老莫名其妙的断到网络通信那里. 后来发现是因为起来了一个线程并且调用的unity API 导致. unity 线程中是禁止调用unity API 的. 删掉用 DateTime ...
- Django---进阶8
目录 前后端传输数据的编码格式(contentType) ajax发送json格式数据 ajax发送文件 django自带的序列化组件(drf做铺垫) ajax结合sweetalert 批量插入 分页 ...