网站404,500错误页面的处理,及500异常写入errorLog日志

变身宝贝
⽹站404,500错误页⾯的处理,及500异常写⼊errorLog⽇志l 配置
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>
2.定义404.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8" isErrorPage="true"%>
<%response.setStatus(HttpServletResponse.SC_OK); %>
<h1>您所查看的商品或页⾯没有到</h1>
3.定义500.jsp
非晶硅<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8" isErrorPage="true"%>
<%response.setStatus(HttpServletResponse.SC_OK); %>
<h1>很抱歉,您访问的页⾯出错了!</h1>
<div id="errorMessageDiv" >
<pre>
<%
try {                        //全部内容先写到内存,然后分别从两个输出流再输出到页⾯和⽂件
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
PrintStream printStream = new PrintStream(byteArrayOutputStream);
printStream.println();
UserInfoDTO requestUser = (Session().getAttribute("userLogin");
printStream.println("⽤户信息");
if(requestUser != null){
printStream.println("账号:" + Nickname());
}else{
printStream.println("账号:游客");
}
printStream.println("访问的路径: " + Attribute("javax.quest_uri"));
printStream.println();
printStream.println("异常信息");
printStream.Class() + " : " + Message());
printStream.println();
Enumeration<String> e = ParameterNames();
if (e.hasMoreElements()) {
printStream.println("请求中的Parameter包括:");
while (e.hasMoreElements()) {
String key = e.nextElement();
printStream.println(key + "=" + Parameter(key));
}
printStream.println();
}
printStream.println("堆栈信息");
exception.printStackTrace(printStream);
printStream.println();
out.print(byteArrayOutputStream);    //输出到⽹页
Calendar calendar = Instance();
/**按年⽉⽇来分*/
int year = (Calendar.YEAR);//得到年
int month = (Calendar.MONTH)+1;//得到⽉,因为从0开始的,所以要加1
int day = (Calendar.DAY_OF_MONTH);//得到天
String saveurl = Constants.ROOTPATH + "errorLog/";
String path1 = saveurl + year + "/" ;
String path2 = saveurl + year + "/" + month + "/" ;
pvdfString path3 = saveurl + year + "/" + month + "/" + day + "/" ;
//建⽴按年⽉⽇⽂件夹,如果⽂件夹不存在,就建⽴新的⽂件夹。
江苏警官学院学报
//print("AAAAA"+RealPath("/errorLog"));  //项⽬的根⽬录
//File dir = new RealPath("/errorLog"));
穿过骨头抚摸你File dir = new File(path3);
活塞式战斗机//if (!ists()) {
//    dir.mkdir();
//}
String timeStamp = new SimpleDateFormat("yyyyMMddHHmmssS").format(new Date());
FileOutputStream fileOutputStream = new FileOutputStream(new AbsolutePath() + File.separatorChar + "error-" + timeStamp + ".txt"));                        new PrintStream(fileOutputStream).print(byteArrayOutputStream); //写到⽂件
} catch (Exception ex) {
ex.printStackTrace();
}
%>
</pre>
</div>

本文发布于:2024-09-21 22:20:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/279426.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:访问   件夹   没有   商品   警官   写到
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议