在线上“逆战”学习第十三天
努力到无能为力,拼搏到感动自己!!!
今天在课堂上学习到了JavaEE里的Cookie和如何解决乱码问题
乱码问题:
GET中文乱码:接收到数据后,先获取request对象以ISO8859-1字符编码接收到的原始数据的字节数组,然后通过字节数组以指定的编码构建字符串,解决乱码问题。
name=new String(name.getBytes(“ISO-8859-1”),“UTF-8”);
POST乱码:由于客户端是以UTF-8字符编码将表单数据传输到服务器端的,因此服务器也需要设置以UTF-8字符编码进行接收,要想完成此操作,服务器可以直接使用从ServletRequest接口继承而来的"setCharacterEncoding(charset)"方法进行统一的编码设置。
总结:
遇到乱码问题时,你首先要确认是不是从数据库中读取,如果读取数据库时没有乱码,就可以确定是浏览器和服务器之间的传输出现乱码
request.setCharacterEncoding(“UTF-8”);
response.setContentType(“text/html;charset=UTF-8”);
如果是数据库中读取出现乱码确定数据库编码方式,
然后在url?setCharacterEncoding=utf-8
如果是tomcat7出现get乱码,那就另说
name=new String(name.getBytes(“ISO-8859-1”),“UTF-8”);
Cookie是如何解决无状态性:
1.当浏览器第一次发送请求给服务器,服务器会生成一个密码在内存中保存,并且将密码通过response响应给浏览器
2.浏览器拿到这个密码之后,他会存储在浏览器内部(Ctrl+shift+del),这个叫cookie
3.当同一个浏览器去访问同一个服务器时,那么浏览器回去解读访问的url,会去本地找哪一个cookie中存储了url(项目名)。
4.此时如果找到了,那么他会将cookie封装到这一次请求的request中去,服务器拿到了request就能拿到cookie,cookie中有密码,然后完成比对,得知这两次请求是同一个人。
Chrome浏览器查看Cookie信息:chrome://settings/content/cookies
Cookie技术的应用:例如,登录的记住密码,购物车。
如何修改Cookie:只需要保证Cookie的名和路径一致即可修改。
cookie的工作原理===》session的工作原理。
充实忙碌的一天,梦想激励我加油!
中国加油!武汉加油!