范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

SpringMVC异常处理

  在 Spring MVC 应用的开发中,不管是操作底层数据库,还是业务层或控制层,都会不可避免地遇到各种可预知的、不可预知的异常。我们需要捕捉处理异常,才能保证程序不被终止。
  Spring MVC 有以下 3 种处理异常的方式:
  1、使用 Spring MVC 提供的简单异常处理器 SimpleMappingExceptionResolver。
  2、实现 Spring 的异常处理接口 HandlerExceptionResolver,自定义自己的异常处理器。
  3、使用 @ExceptionHandler 注解实现异常处理  1. @ExceptionHandler
  局部异常处理仅能处理指定 Controller 中的异常。
  示例 1:下面使用 @ExceptionHandler 注解实现。定义一个处理过程中可能会存在异常情况的 testExceptionHandle 方法。@RequestMapping("/testExceptionHandle") public String testExceptionHandle(@RequestParam("i") Integer i) {     System.out.println(10 / i);     return "success"; }12345复制代码类型:[java]
  显然,当 i=0 时会产生算术运算异常。
  下面在同一个类中定义处理异常的方法。@ExceptionHandler({ ArithmeticException.class }) public String testArithmeticException(Exception e) {     System.out.println("打印错误信息 ===> ArithmeticException:" + e);     // 跳转到指定页面     return "error"; }123456复制代码类型:[java]
  注意:该注解不是加在产生异常的方法上,而是加在处理异常的方法上。
  异常页面 error.jsp 代码如下。<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>     错误页面       发生算术运算异常,请重新输出数据!  123456789101112复制代码类型:[java]
  访问地址:http://localhost:8080/springmvcDemo2/testExceptionHandle?i=0.页面跳转到 error.jsp 页面,运行结果如图 1 所示。
  控制器输出结果如下。打印错误信息 ===> ArithmeticException:java.lang.ArithmeticException: / by zero1复制代码类型:[java]
  @ExceptionHandler 注解定义的方法优先级问题:例如发生的是 NullPointerException,但是声明的异常有 RuntimeException 和 Exception,这时候会根据异常的最近继承关系找到继承深度最浅的那个@ExceptionHandler 注解方法,即标记了 RuntimeException 的方法。
  被 @ExceptionHandler 标记为异常处理方法,不能在方法中设置别的形参。但是可以使用 ModelAndView 向前台传递数据。
  使用局部异常处理,仅能处理某个 Controller 中的异常,若需要对所有异常进行统一处理,可使用以下两种方法。  2. HandlerExceptionResolver
  Spring MVC 通过 HandlerExceptionResolver 处理程序异常,包括处理器异常、数据绑定异常以及控制器执行时发生的异常。HandlerExceptionResolver 仅有一个接口方法,源码如下。public interface HandlerExceptionResolver {     @Nullable     ModelAndView resolveException(             HttpServletRequest request, HttpServletResponse response, @Nullable Object handler, Exception ex); }12345复制代码类型:[java]
  发生异常时,Spring MVC 会调用 resolveException() 方法,并转到 ModelAndView 对应的视图中,返回一个异常报告页面反馈给用户。  3. SimpleMappingExceptionResolver
  全局异常处理可使用 SimpleMappingExceptionResolver 来实现。它将异常类名映射为视图名,即发生异常时使用对应的视图报告异常。
  示例 3:在 springmvc-servlet.xml 中配置全局异常,代码如下。                                                    error                            12345678910111213复制代码类型:[python]
  再次访问 http://localhost:8080/springmvcDemo2/testExceptionHandle?i=0.页面跳转到 error.jsp 页面,运行结果如上图 1 所示。
  开课吧广场-人才学习交流平台

2022年618买手机有什么推荐?最近一直有朋友问2022年618买手机有什么推荐?其实买手机也是个很简单的问题,我觉得只要本着买新不买旧早买早享受的两个要素就很好选择了,最近发布的这几款新品手机可以入手。VivovivoS15首发评测气质未曾变过,但体验更全能了去年12月的vivoOriginOSOcean发布会上,曾出现过一台直角中框的展示机,关于这款神秘手机的型号未知,但根据数码博主的爆料,vivo存在某款预装了OriginOSOce三款天玑8100高性价比手机,性能与体验兼顾,再用3年都没问题要说今年手机市场内卷还是非常厉害,但是对于咱们用户来说,感觉没有特别亮眼的手机,大家对于高端旗舰机的需求反而降低了,而中端机搭载天玑8100的手机却成了香饽饽,但是很多人对手机处理续写春天的故事贵州打造算力保障基地经济日报贵阳5月23日讯(记者吴秉泽王新伟)今年以来,贵州加快发展数据中心产业集群智能终端产业集群数据应用产业集群等三个千亿级产业集群,力争打造面向全国的算力保障基地。贵安新区是贵小米11ultra的使用感受(二)转眼间入手小米11ultra半个月的时间了,下面继续说说感受吧!一。发热问题,主要体现在无线充电和玩游戏的时候,日常使用几乎没有发热情况。刷视频时间长了,偶尔也会发热,但在能接受的投奔中国为我们带来10亿像素技术,如今加入中国国籍,美国成笑话士为知己者死,这句话放在戴维布拉迪的身上正好非常合适。作为全世界顶尖光学研究专家,他曾经在杜克大学负责开发研究一台名为AWARE2的超高清相机,而这款相机将会起到划时代的意义。原本中国联通启动2022年科技工作者日暨科技周系列活动为进一步加快中国联通科技创新发展,推动科技自立自强,全面落实集团公司新战略新定位,中国联通积极响应科技部中国科协号召,于5月23日正式启动主题为众心向党创新争先自立自强的中国联通科高合丁磊坚守造车初心,致力于打造来自中国的世界品牌受政策和用户消费习惯等多重因素影响,新能源汽车市场近年来一路高歌猛进,自主品牌迎来了新一轮的发展机遇。在这个过程中,就诞生了超跑SUV高合HiPhiX这样有颜值有实力,同时还有销量PS又出新款王炸?LuminarNeo人工智能后期软件升级版已上线Skylum是国外一家知名的修图人工智能软件厂商,大家熟知的Luminar4和LuminarAI,就是他们的软件,智能修图方面遥遥领先行业水平!今年Skylum又强势推出一款全新的黑科技拉满,纯电车的极致比亚迪海豹技术解析海豹预售,CTB电池发布,预售价格21。28万28。98万,价格和之前预测的相差不多,和此前发布的汉EV有较大程度的重合。海豹这款车到底有什么特点,都搭载了哪些技术?有何先进之处?速看!关乎湖北消费券买车买房退税5月24日,湖北省人民政府办公厅印发加快消费恢复提振若干措施的通知,提出我省今年将通过发放消费券,报废旧车并购买新能源汽车补贴8000元,合理调整住房公积金贷款首付和额度,在允许临
3199首发步价的一加9RT你觉得值得买吗?处理器高通骁龙888处理器内存规格UFS3。1LPPDR5屏幕6。62英寸120Hz刷新率分辨率24001080E4OLED发光材料屏幕材质中框金属正面及后盖康宁大猩猩5代玻璃像素苹果将于18日举行新品发布会苹果这次发布会将发布哪些新品今日凌晨,苹果中国官网发出邀请函,宣布将于北京时间10月19日凌晨1点举办特别活动,本次发布会的口号为来炸场。这距离苹果上次举行发布会仅过了约一个月的时间。9月15日,苹果以加州来OPPO新机在曝光或命名为K9s骁龙778G5000mAh电池X轴线性马达继上半年OPPO发布了K9中档机型之后,曾经说的K9系列还将会有高配版的K9Pro在上个月才正式发布,然而,有意思的是貌似OPPOK9系列的新机还没发布完。日前,有数码博主再次爆料499元档位实力多面手!一加BudsZ2体验评测从一加2013年成立起,我就对这个品牌保持着浓厚的兴趣。在当时的手机市场环境中,一加能够凭借极客超性能极简风格来进行宣传与推广,着实让我这个数码控产生了不少的好感。直到后来接触到一小米11T回国后发生改变,或在部分细节上缩水现在时间已经来到了十月中旬,这对于手机用户来说,马上就要迎来换机的阶段了,因为在接下来的市场中有非常多的新机要登场。同时,也有很多发布过一段时间的手机产品要进行降价吸引用户进行选择双风机加持,一遍清扫就干净eufyX8扫拖一体机器人相信大家对于扫地机器人肯定都不陌生,特别是最近这两年,这个行业更是得到了迅猛发展,各个品牌的扫地机器人不断地推陈出新,在吸力建图路径规划扫拖一体智能避障等硬性指标上你追我赶。但这里人工智能3D打印,做出一口好牙来源科技日报人工智能3D打印,做出一口好牙孙玉春北京大学口腔医学院口腔医学数字化研究中心副主任主任医师近日,在2021年中关村论坛上揭晓的2020年度北京市科学技术奖中,北京大学口远程控制电脑开关机电量计量,向日葵智能插线板P1体验电脑,一个我们生活中不可或缺的电子产品,日常的工作学习娱乐都少不了它。但由于电脑的体积比较大,我们不可能做到随时都能使用电脑。所以,围绕电脑使用的囧事还真不少,就比如,你刚加完班回索尼黑卡第一代与华为p20pro的拍照能力相比,谁更强?出门拍照带了p20pro还有必要再带黑卡第一代吗?首先,手机是大众数码,而相机是专业数码,如果比拍照性能,当然是索尼的黑卡一代(RX100)相机会更强!因为RX100是1英寸的cmos传感器,而华为P20pro是11。75英寸,两人工智能代替了一些劳动力后,被取代的劳动力该如何安排?人工智能的确给我们带来美好未来的憧憬,但是,这并不能排除人工智能发展给社会分工和劳动带来的影响。人工智能时代,高速发展的科技技术和互联网,让劳动者的岗位变得威胁十足,不得不承认,部从大北回来,我发现有这么多App在后台围观我国庆最后一天,我带着手机相册里满满一沓照片上了从西宁回北京的火车,但是还来不及回看照片就陷进一个瞌睡里。这段时间里微信替我把照片复盘了好几遍,带定位权限的软件每五分钟看一下我和火车