zoukankan      html  css  js  c++  java
  • 【java】利用异常机制,往前台写错误信息

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

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

    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();
                }
            }
        }
    }

  • 相关阅读:
    SpannaleString总结
    【未完成】bug记录2013427>import工程时出现Build path contains duplicate entry:'src' for project 'XXX'
    【未完成】给eclipse项目改名
    android创建和删除桌面快捷方式
    bug记录2013426(2)>Select at least one project错误
    hosts配置
    获取当前应用的版本号及android系统版本号及手机型号
    转载:如何将offcie 2003文档(.doc、.xls、.ppt)转换成mht文档
    转载:.NET2.0 验证控件常用的正则表达式
    转载: RESTORE DATABASE命令还原SQLServer 2005 数据库
  • 原文地址:https://www.cnblogs.com/ae6623/p/4416461.html
Copyright © 2011-2022 走看看