重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
你好,很高兴回答你的问题。
十载的建德网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站的优势是能够根据用户设备显示端的尺寸不同,自动调整建德建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“建德网站设计”,“建德网站推广”以来,每个客户项目都认真落实执行。
抛出异常时会同时告诉你异常是哪行代码抛出的。
对应的去检查这行代码,找到问题,做对象的修复即可。
如果有帮助到你,请点击采纳。
比如你又一个方法叫a,调用了一个方法b(b方法throws了一个异常),那么在a里面使用try-catch捕获这个异常,在catch块里面,使用jsp的request,或者session将异常对象e.getMessage的内容存储到制定的变量里面(例如request.setAttribute("errorMessage",e.getMessage));
然后到页面使用EL表达式${errorMessage}取出来就好了。
检查日志文件,你就能看到满屏重复的异常。
因此,异常只能被打印一次。在哪儿打异常最好呢?。
原则就是自定义异常在抛出前打印一下,其他各层对自定义异常不作任何打印。甚至不用Catch.
对于上面WebServiceClient.login,在这打印是对的,还可以加上自己的一些log信息,如log.fatal("cannotlogintheXXXsystem");至于在其他层,就不在需要打印,处理这个异常了。这样的异常处理没有什么技术含量,只是个异常处理原则,如果人人都遵循(看到自定义不处理,抛自定义异常前处理)这个原则,就能避免重复打印异常日志
再考虑如何把友好的异常信息给终端用户呢,所谓友好,不能总是提示“系统错误,请稍后再试”,因为这样能让使用者对系统没有信心。好比领导交给你的任务,你没有完成,你总不能每次都说“这是我的问题,以后改正”吧。对异常进行稍微详细的说明,是必要的。另外,也不能总是把异常的stacktrace原封不动的现实给使用者,如java.io.IOExcepiton:Filecannotbefound.这样会被认为你的程序质量不够高。
可以通过异常指定类型来在Web层解释并转化为友好的异常
。如上列子,可以如下定义MyApplicationExceptoin
如下代码:
PrintService printService = PrintServiceLookup.lookupDefaultPrintService();
这句是寻找缺省的打印服务,如果找不到就返回null。你在本地找得到本地的打印机,程序到另一个机器了,那上面没有缺省的打印服务,当然就返回null了。