(1) 解决中文输出乱码问题。
-
方法一
response.setHeader(“Content-type”, “text/html;charset=UTF-8”);
response.setCharacterEncoding(“UTF-8”);
PrintWriter out =response.getWriter();
out.print(“欢迎光临!”);
实现了 -
方法二
response.setContentType(“text/html;charset=UTF-8”);
PrintWriter out =response.getWriter();
out.println(“中国”);
实现了 -
方法三
本实验所用浏览器:Microsoft Edge
没有找到如何直接在Edge浏览器中设置编码方式的方法,只能先调制成用IE模式打开。但是win11系统不支持IE模式。
我查到其他浏览器比如Google,360等还是可以改的。但是还是推荐使用前面的方法更具有用户友好性。
(2) 任务 4-2 实现网页定时刷新并跳转。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setHeader("Refresh", "2;URL=http://www.itcast.cn");
}
实现两秒之后自动跳转
(4) 实现防“盗链“功能。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.setContentType("text/html;charset=utf-8");
PrintWriter out =response.getWriter();
String referer=request.getHeader("referer");
String sitePart="http://"+request.getServerName();
if(referer!=null&& referer.startsWith(sitePart))
{
out.println("dealing download......");
}else {
RequestDispatcher rd=request.getRequestDispatcher("/download.html");
rd.forward(request, response);
}
}