Servlet处理Cookie
1.CGI:进程,servlet:线程
2.HttpServletResponse下的方法就没有get开头的,(PrintWriter)getWriter在ServletResponse下。
3.str==null||str.length()=0(注意顺序),这样判断更健壮,可能初始化为空串。
4.<label> 标签为 input 元素定义标注(标记),label 元素不会向用户呈现任何特殊效果。不过,它为鼠标用户改进了可用性。如果您在 label 元素内点击文本,就会触发此控件。就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上。<label> 标签的 for 属性应当与相关元素的 id 属性相同。注释:"for" 属性可把 label 绑定到另外一个元素。请把 "for" 属性的值设置为相关元素的 id 属性的值。
<html><body><p>请点击文本标记之一,就可以触发相关控件:</p><form><label for="male">Male</label><input type="radio" name="sex" id="male" /><br /><label for="female">Female</label><input type="radio" name="sex" id="female" /></form></body></html>
5.做留言板时需要把里面的特殊字符替换掉,用String的replaceAll,处理<>' &,最后替换换行符"\n",换成<br>,这个一定要放在大于小于号后面。
public static String filterHtml(String input) {if (input == null) {return null;}if (input.length() == 0) {return input;}input = input.replaceAll("&", "&");input = input.replaceAll("<", "<");input = input.replaceAll(">", ">");input = input.replaceAll(" ", " ");input = input.replaceAll("'", "'");input = input.replaceAll("\"", """);return input.replaceAll("\n", "<br>");}
6.cookie:饼干,曲奇;http是无状态协议、断开式链接,所以残生了cookie,是文本文件,采用key-value存储。只能是英文或者数字。实现记住我功能,定制个性化页面。win7在C盘User目录下,使用setMaxAge设置有效期(秒),大小和数量有限制。因为cookie是铭文的,所以可能会泄露信息。注意cookies更改过后还需要再加载到服务器,因为
修改只是在本地硬盘。没有删除cookie的方法,设置有效期是0就行了。
7.最后访问时间
//在java.text,java.util已经过时SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Cookie cookie2 = new Cookie("lastTime", sdf.format(new Date()));//cookie一个月,没必要再判断一个月 多少天cookie2.setMaxAge(24 * 60 * 60 * 30);//需要放回服务器response.addCookie(cookie2);Cookie[] cookies = request.getCookies();Cookie cookie = null;for (int i = 0; i < cookies.length; i++) {cookie = cookies[i];if (cookie.getName().equals("username")) {out.println("用户名:" + cookie.getValue());out.println("<br>");}if (cookie.getName().equals("lastTime")) {out.println("最后访问时间:" + cookie.getValue());out.println("<br>");}}
Servlet处理Cookie的更多相关文章
- Servlet/JSP-05 Cookie
一. 问题? HTTP协议是一种无状态协议,服务器本身无法识别出哪些请求是同一个浏览器发出的,浏览器的每一次请求都是独立的.现实业务中服务器有时候需要识别来自同一个浏览器的一系列请求,例如购物车,登录 ...
- Servlet 利用Cookie实现一周内不重复登录
import java.io.IOException;import java.io.PrintWriter; import javax.servlet.ServletException;import ...
- JavaWeb学习记录总结(二十九)--Servlet\Session\Cookie\Filter实现自动登录和记住密码
一.Servlet package autologin.servlet.login; import java.io.IOException;import java.security.MessageDi ...
- 动手学servlet(四) cookie和session
Cookie cookie是保存在客户端的一个“键值对”,用来存储用户的一些信息 cookie的应用: -在电子商务会话中标识用户 -对网站进行定制,比如你经常浏览哪些内容,就展示哪些页面给你 - ...
- Servlet & JSP - Cookie
关于 Cookie 的内容,参考 HTTP - Cookie 机制 获取来自客户端的 cookie request.getCookies 方法可以获取来自 HTTP 请求的 cookie,返回的是 j ...
- Servlet 笔记-Cookie 处理
Cookie 是存储在客户端计算机上的文本文件,并保留了各种跟踪信息. 识别返回用户包括三个步骤: 服务器脚本向浏览器发送一组 Cookie.例如:姓名.年龄或识别号码等. 浏览器将这些信息存储在本地 ...
- servlet之cookie实现
三个servlet的实现: package app02c;import java.io.IOException;import java.io.PrintWriter;import javax.serv ...
- Type mismatch: cannot convert from javax.servlet.http.Cookie[] to org.apache.tomcat.util.http.parser.Cookie[] 的一种可能
今天用到Cookie时,写了一个Cookie数组,发现报错“Type mismatch: cannot convert from javax.servlet.http.Cookie[] to org. ...
- java用servlet、cookie实现一个阅读记录
效果如图 代码1 package com.xiaostudy.servlet; import java.io.IOException; import java.io.PrintWriter; impo ...
- servlet(5) - Cookie和session - 小易Java笔记
1.会话概述 (1)会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. (2)会话过程中的数据不宜保存在request和servle ...
随机推荐
- List<T>实体去重分组:
实体去重分组: //实体类 public class Province { public string id { get; set; } public string name { get; set; ...
- mybatis0201 01复习
mybatis是什么? mybatis是一个持久层框架,是apache下的开源项目,前身是itbatis,是一个不完全的ORM框架(因为mybatis提供输入和输出的映射,需要程序员自己写sql语句) ...
- vs2012 aspx 没有设计视图了?
vs2012的html设计视图没有了!重新安装一次都不行!现在已经通过简单办法来解决了 其实当你打开 HTML设计器 设置时, “启用 HTML设计器" 这里是打勾的!这时千万不要放弃.先 ...
- spring使用aop
基于spring-framework-4.1.7使用aop >>>>>>>>>>>>>>>>>&g ...
- 文件图标css样式
.list-list .ico-bookfolder { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEU ...
- git warning: LF will be replaced by CRLF in 解决办法
在使用git的时候,每次执行 #git add "目录" git add . 都会提示这样一个警告消息: warning: LF will be replaced by CRLF ...
- Bootstrap 开关(switch)控件需要注意的问题
远程文档地址:http://www.bootcss.com/p/bootstrap-switch/ 先上lz遇到的小坑:自古无图无真相的原则 上面代码注释掉后 就是下面这个图片效果!然后加载顺序也要注 ...
- Lucida Grande字体无法正常显示冒号的解决方案
曾经贪图Mac OSX的UI漂亮,后来查到它用的是Lucida Grande字体,所以索性将win7也改成了那种字体,结果浏览器中的中文冒号全都显示为一个奇怪的符号.后来即使将字体设置回去也无法还原. ...
- .NET平台下几种SOCKET模型的简要性能供参考
转载自:http://www.cnblogs.com/asilas/archive/2006/01/05/311309.html .NET平台下几种SOCKET模型的简要性能供参考 这个内容在cnbl ...
- oracle模糊查询效率提高
1.使用两边加‘%’号的查询,oracle是不通过索引的,所以查询效率很低. 例如:select count(*) from lui_user_base t where t.user_name lik ...