servlet基础概念
一、servlet是什么?
运行在Web服务器上(如:tomcat),作为浏览器请求与数据库或其他应用程序之间的中间层
二、servlet主要任务:
1.读取浏览器发送的显式数据(如:html表单)隐式数据(如:cookies);
2.处理数据并生成结果,期间可能访问数据库;
3.发送显式数据(word文档,html,xml,exl)给客户端(浏览器),或者发送隐式数据(缓存参数,cookies)).
三、包
使用javax.servlet和javax.servlet.http创建
四、生命周期
1.初始化:init();只在创建servlet对象创建后调用一次,每一个用户请求都会创建一个线程。
2.处理请求:service();自动调用doGet()和doPost()方法,可以根据需求重写。
3.结束:destory();结束数据库访问,关闭线程,cookies列表写入磁盘
4.垃圾回收:JVM的垃圾回收器
五、sevlet表单数据
1. get方法向页面发送已编码的用户信息,页面和编码之间用?分隔,请求字符串最大1024字符,密码不建议这样传输如:http://www.test.com/hello?key1=value1&key2=value2
2. post方法单独传消息,servlet使用doPost()处理
3. getParameter():您可以调用 request.getParameter() 方法来获取表单参数的值。getParameterValues():如果参数出现一次以上,则调用该方法,并返回多个值,例如复选框。
- getParameterNames():
- 如果您想要得到当前请求中的所有参数的完整列表,则调用该方法。
六:页面重定向:
调用javax.servlet.http.HttpServletResponse 接口的sendRedirect()方法
七:自动刷新:
Java Servlet 刷新网页的最简单的方式是使用响应对象的方法 setIntHeader()。以下是这种方法的定义:
public void setIntHeader(String header, int headerValue)
八:session跟踪
1.cookies
2.URL重写
3.隐藏的表单字段
九、删除 Session 会话数据
当您完成了一个用户的 session 会话数据,您有以下几种选择:
- 移除一个特定的属性:您可以调用 public void removeAttribute(String name) 方法来删除与特定的键相关联的值。
- 删除整个 session 会话:您可以调用 public void invalidate() 方法来丢弃整个 session 会话。
- 设置 session 会话过期时间:您可以调用 public void setMaxInactiveInterval(int interval) 方法来单独设置 session 会话超时。
- 注销用户:如果使用的是支持 servlet 2.4 的服务器,您可以调用 logout 来注销 Web 服务器的客户端,并把属于所有用户的所有 session 会话设置为无效。
- web.xml 配置:如果您使用的是 Tomcat,除了上述方法,您还可以在 web.xml 文件中配置 session 会话超时,如下所示:
<session-config>
<session-timeout>15</session-timeout>
</session-config>
上面实例中的超时时间是以分钟为单位,将覆盖 Tomcat 中默认的 30 分钟超时时间。
在一个 Servlet 中的 getMaxInactiveInterval() 方法会返回 session 会话的超时时间,以秒为单位。所以,如果在 web.xml 中配置 session 会话超时时间为 15 分钟,那么 getMaxInactiveInterval() 会返回 900。
最新文章
- Web开发技术发展历史
- ios中strong和weak的解释理解
- 如何根据iframe内嵌页面调整iframe高宽续篇
- xcode下编译.a文件的路径
- android绘画折线图一
- bc命令
- 图解Java字符串不变性
- NPOI的使用
- 基于Networks of Brokers的HA方案
- 手工配置Service的过程中。
- 条件变量signal与unlock的顺序
- 常用的免费Webservice接口
- 关于数据结构的10个面试题(c语言实现)
- 简单了解split()函数的性质
- 如果去掉UITableView上的section的headerView和footerView的悬浮效果
- 25)django-form使用
- netty解码器详解(小白也能看懂!)
- nginx.conf(centos7 1.14)主配置文件修改
- wps表格开发C#
- 6.18_web服务器内容