## Java Web 技术学习经验分享
人生如梦--2018.12.20
1.jsp页面之间传递cookie出现乱码
jsp页面存入cookie,获取cookie出现乱码如何解决?
第一步:
创建cookie界面:
uname = URLEncoder.encode(uname, “utf-8”);
out.print(uname);
//新建cookie
Cookie cookie = new Cookie(“uname”,uname);
List item
第二步:
获取cookie界面
if(cookies!=null){
for(Cookie cookie:cookies){
uname = cookie.getValue();
}
}
uname = URLDecoder.decode(uname, “utf-8”);
2.jsp页面之间传值乱码
问题:jsp页面之间传值出现乱码如何解决?
方法1:
头部:
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding=“UTF-8”%>
页面首句为:
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding="UTF-8"%>
方法2:
利用String进行转码
new String(变量名.getBytes(“ISO-8859-1”,“utf-8”);
方法三:
配置server.xml文件中的编码
方法四:
配置过滤器、server.xml文件
注:
可直接设置所有的jsp文件编码为utf-8
3.server服务无法打开
Tomcat服务启动失败
解决方法:
1.双击下面内容
2.勾选红色选项,并保存
4.servlet2.5与servlet3.0区别
servlet2.5与servlet3.0区别
1.servlet2.5
a、servlet2.5创建servlet文件时,需要到web.xml中进行配置
b、jsp页面跳转到servlet文件时,${pageContext.request.contextPath}/包名/servlet文件名
2.servlet2.5
a、servlet2.5创建servlet文件时,不需要到web.xml中进行配置,只需要在servlet文件的头部加上@webServlet(/servlet文件名);
b、jsp页面跳转到servlet文件时,${pageContext.request.contextPath}/servlet文件名
5.几大内置文件作用范围
request:
作用范围为一次转发
session:
作用范围为一个会话,关闭浏览器另外打开一个浏览器,则之前的内容失效
application:
作用范围为整个项目,只要tomcat没有关闭,关闭浏览器,在打开另外一个浏览器
之前的内容还存在。
例子:网站访客的统计。
三者属性的创建与使用:
request.setAttribute(arg0, arg1)
request.getAttribute(arg0)
application.setAttribute(arg0, arg1)
application.getAttribute(arg0)
session.setAttribute(arg0, arg1)
session.getAttribute(arg0)
6.设计网站访客记录笔记
1.jsp页面导入包、类
<%@ page import=“user." %>
<%@ page import="java.util.” %>
2.获取ip地址
request.getRemoteAddr();
3.list集合实例化之后才能使用
4.时间,ip的添加与获取
List dateList = new ArrayList();
List ipList = new ArrayList();
//获取访问数量
Integer count = (Integer)application.getAttribute(“count”);
out.print(ipList);
//获取访问用户的ip
String ip = request.getRemoteAddr();
out.print(ip);
//获取用户访问时间
Date time = new Date();
if(count==null){
count=1;
ipList.add(ip);
dateList.add(time);
}else{
count++;
dateList =(ArrayList) application.getAttribute("dateList");
ipList = (ArrayList) application.getAttribute("ipList");
ipList.add(ip);
dateList.add(time);
}
application.setAttribute("count", count);
application.setAttribute("dateList", dateList);
application.setAttribute("ipList", ipList);