有时候,程序可能会报异常,而这些异常,通常需要提示前台操作人员怎么去处理,才能完成业务。

此时,我们只需要在业务层,自己抛出一个异常,自己捕捉之后,调用下类,即可输出到前台。

1.servlet里面可以这样写

try {

 ....

  } catch (Exception e) {
e.printStackTrace();
this.showWrongMessage(resp, e.getMessage());//调用此方法,输出一个弹出窗口到前台页面,传递message
// logger.info(e.getMessage());
}

2.html显示页面出错警告

 /*
* html显示页面出错警告
*
* @param response
* @param message
*/
public void showWrongMessage(HttpServletResponse response, String message) { response.setContentType("text/html;charset=GBK");
StringBuffer buf = new StringBuffer();
buf.append("");
buf.append("<html>");
buf.append("<head>");
buf.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=GBK\">");
buf.append("<title>提示信息</title>");
buf.append("</head>");
buf.append("<body>");
buf.append(" <script language=\"javascript\">"); buf.append("var x = 640;");
buf.append("var y = 480;");
buf.append("var xx = (window.screen.width - x) / 2;");
buf.append("var yy = (window.screen.height - y) / 2;"); buf.append("window.close();");
buf.append("var windowFeatures = \"width=\" + x + \",height=\" + y + \",status,scrollbars=yes,resizable,left=\" + xx + \",top=\" + yy + \"screenX=\" + xx + \",screenY=\" + yy; "); buf.append("var win=window.open('','',windowFeatures);");
buf.append("win.document.write('<span class=\"bnew\">提示信息 :</span>');");
buf.append("win.document.write('<center><p><pre style=\"color:red;border=2px\">sorry " + message + "</pe> </p></center>');");
buf.append(" </script>");
buf.append("</body>"); /*
buf.append("<body bgcolor=\"white\">");
buf.append("<span class=\"bnew\">提示信息 :</span>");
buf.append("<center><p><pre style='color:red;border=2px'>sorry " + message + "</pe> </p></center>");
buf.append("</body>");
*/
buf.append("</html>");
byte[] bs = buf.toString().getBytes(); ServletOutputStream ouputStream = null; try {
ouputStream = response.getOutputStream();
ouputStream.write(bs, 0, bs.length);
ouputStream.flush();
} catch (IOException e1) {
e1.printStackTrace();
} finally {
if (ouputStream != null) {
try {
ouputStream.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}

【java】利用异常机制,往前台写错误信息的更多相关文章

  1. java封装返回结果应用 利用反射机制 返回结果以及错误信息

    //此方法是自己琢磨的,可能有漏洞--符合我的系统目前的需求,大家可以借鉴public ResponseMessage exec (String funname, Object[] params,Ob ...

  2. Java的异常机制

    Java的异常机制 (一)异常的概念 异常是指程序在编译或运行时出现的导致程序不能继续编译或运行的状况.. (二)Throwable类 Throwable类继承自Object类,是Java中所有错误或 ...

  3. 【转】Java利用反射机制访问私有化构造器

    Java利用反射机制访问私有化构造器 博客分类: java   我们都知道,当一个类的构造方法被设为私有的时候(private),在其他类中是无法用new来实例化一个对象的. 但是有一种方法可以把带有 ...

  4. java利用反射机制判断对象的属性是否为空以及获取和设置该属性的值

    1.java利用反射机制判断对象的属性是否为空: Map<String,String> validateMap = new LinkedHashMap<String, String& ...

  5. 关于java中异常机制

    什么是异常:异常就是程序在运行时出现的不正常情况.对于严重的情况Java通过Error类进行描述,一般不用编写代码处理:对于不严重的情况Java通过Exception描述,一般编写针对性代码对其进行处 ...

  6. Java之异常机制(1) - 高效处理异常

    Java开发人员做出的有关架构的最重要的决定之一便是如何使用Java异常模型.Java异常处理成为社区中讨论最多的话题之一.一些人认为Java语 言中的已检查异常(Checked Exceptions ...

  7. Java笔记 - 异常机制

    JAVA异常机制是Java提供的用于处理程序在运行期可能出现的异常事件(如数组下标越界.文件不存在等)的一种机制,使程序不会因为 异常的发生 而 阻断或产生不可预见的结果 .而且还可以将逻辑代码与错误 ...

  8. Java——利用反射机制将表单数据自动填充到JavaBean中

    以一个案例介绍反射机制的一种常见的使用场景,以及具体实现. 1.本文案例 在编写Java Web应用程序时,使用表单提交数据是一个必不可少的环节,后台对于前台使用表单提交的数据需要能够从请求中解析,并 ...

  9. 利用huson的日志获取编译错误信息的做法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 使用hudson编译一百多个VC工程,输出的日志有6M之大,摆在我面前的一个问题是如何利用这个日志信息来获取编译错误信 ...

随机推荐

  1. 在ASP.NET中,IE与Firefox下载文件带汉字名时乱码的解决方法

    解决办法: HttpContext.Current.Response.Clear(); HttpContext.Current.Response.Buffer = true; HttpContext. ...

  2. MySQL字符串函数

    字符串大写和小写转换 MySQL 字符串大写和小写转化函数有两对: lower(), uppper() 和 lcase(), ucase() mysql> select lower('DDD') ...

  3. iOS-CALayer中position与anchorPoint详解

    iOS-CALayer中position与anchorPoint详解 属性介绍 CALayer通过四个属性来确定大小和位置, 分别为:frame.bounds.position.anchorPoint ...

  4. css 选择符

    css参考手册:css.doyoe.com 在css3中,不同的浏览器可能需要不同的前缀,它表示该css属性或规则尚未成为W3C标准的一部分,是浏览器的私有属性,虽然目前较新版本的浏览器都是不需要前缀 ...

  5. Shell - 特殊变量

    $0 表示所执行程序的路径名. [huey@huey-K42JE ~]$ ll ~/bin total 4 -rwxrwxr-x 1 huey huey 21 Oct 24 14:39 hello [ ...

  6. spring事务回滚无法捕捉

    这篇文章讲解了怎么配置才能让spring事务捕捉异常 http://www.360doc.com/content/12/1109/18/6161903_246870991.shtml 需要正确配置sp ...

  7. c#中使用数据读取器读取查询结果

    今天有时间了. 在看<c#数据库入门经典> ,总结数据读取器查询结果. 针对单个结果集使用读取器,有3中方法: String connString =..; String sql =@&q ...

  8. 内存泄漏在 WPF 和 Silverlight 提防

    瑞奇韭菜礼物 ︰ 内存泄漏在 WPF 和 Silverlight 提防 内存泄漏在 WPF 和 Silverlight 提防 WPF 和 Silverlight 允许您定义您的用户界面,用最少的代码将 ...

  9. 分享最近写的 两条sql语句

    1. 搭建基本环境 插入测试数据 insert into jgdm (jgdm,jgmc)  values('12300000000','河南省');insert into jgdm (jgdm,jg ...

  10. framework not found -fno-arc编译错误

    由于我是刚接手的代码  然后我拿来运行根本就是运行不了的  然后需要在linker 那边删除点东西就可以了. 把下边的两个删除就可以了 关于other linker flags 的介绍 请参考http ...