1.一种基于Spring MVC的异常处理方法,所述方法包括:
在接收到客户端发送的关于动态资源的资源请求时,根据配置文件匹配与所述资源请求中资源标识符对应的服务端程序,通过所述服务端程序的前端控制器获取所述资源请求;
从所述资源请求中提取资源标识符,通过所述前端控制器根据所述资源标识符调用相应的映射器对象,通过所述映射器对象获取与所述资源请求对应的处理器对象和拦截器对象,通过所述前端控制器查找与所述处理器对象对应的处理器适配器,通过所述处理器适配器从所述处理器对象中确定目标处理器对象,在调用所述拦截器对象对所述资源请求进行预处理返回false的情况下,结束执行,在调用所述拦截器对象对所述资源请求进行预处理并返回true的情况下,通过所述目标处理器对象处理所述资源请求,得到模型视图对象;
调用所述拦截器对象的回调函数对所述模型视图对象中的结果数据或视图信息进行处理,以对所述模型视图对象包括的结果数据进行验证;
当所述回调函数返回异常类型编码时,则调用异常处理对象对所述异常类型编码进行处理得到新模型视图对象,所述异常处理对象继承自同一异常处理接口类,所述异常类型编码是对各种异常信息进行分类后各自对应的统一编码;
通过所述前端控制器调用视图解析对象,通过所述视图解析对象对所述新模型视图对象中的逻辑视图名进行解析,得到页面地址,根据所述新模型视图对象中的模型数据和所述页面地址,生成异常页面视图对象,将所述异常页面视图对象返回至所述客户端,令所述客户端根据所述异常页面视图对象渲染显示包括与所述异常类型编码对应的异常信息的页面。
2.根据权利要求1所述的方法,其特征在于,所述目标处理器对象继承自同一处理器接口类;所述通过所述目标处理器对象处理所述资源请求,得到模型视图对象包括:获取所述处理器接口类定义的参数处理函数;
将所述资源请求中的请求参数作为函数参数传递给所述参数处理函数,获取所述参数处理函数返回的与所述资源请求对应的模型视图对象。
3.根据权利要求1或2所述的方法,其特征在于,所述模型视图对象包括逻辑视图名和模型数据,所述方法还包括:当所述回调函数未返回异常类型编码时,则
通过所述前端控制器获取视图解析对象;
通过所述视图解析对象对所述逻辑视图名进行解析,得到视图对象;
通过所述视图对象渲染所述模型数据,得到响应数据;
通过所述前端控制器将所述响应数据返回至客户端。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
获取异常信息,对各所述异常信息进行分类;
按照各所述异常信息的类型进行编码,得到异常类型编码。
5.一种基于Spring MVC的异常处理装置,其特征在于,所述装置包括:
资源请求获取模块,用于在接收到客户端发送的关于动态资源的资源请求时,根据配置文件匹配与所述资源请求中资源标识符对应的服务端程序,通过所述服务端程序的前端控制器获取所述资源请求;
模型视图对象获取模块,用于从所述资源请求中提取资源标识符,通过所述前端控制器根据所述资源标识符调用相应的映射器对象,通过所述映射器对象获取与所述资源请求对应的处理器对象和拦截器对象,通过所述前端控制器查找与所述处理器对象对应的处理器适配器,通过所述处理器适配器从所述处理器对象中确定目标处理器对象;在调用所述拦截器对象对所述资源请求进行预处理返回false的情况下,结束执行,在调用所述拦截器对象对所述资源请求进行预处理并返回true的情况下,通过所述目标处理器对象处理所述资源请求,得到模型视图对象;
回调处理模块,用于调用所述拦截器对象的回调函数对所述模型视图对象中的结果数据或视图信息进行处理,以对所述模型视图对象包括的结果数据进行验证;
异常处理模块,用于当所述回调函数返回异常类型编码时,则调用异常处理对象对所述异常类型编码进行处理得到新模型视图对象,所述异常处理对象继承自同一异常处理接口类,所述异常类型编码是对各种异常信息进行分类后各自对应的统一编码;通过所述前端控制器调用视图解析对象,通过所述视图解析对象对所述新模型视图对象中的逻辑视图名进行解析,得到页面地址,根据所述新模型视图对象中的模型数据和所述页面地址,生成异常页面视图对象,将所述异常页面视图对象返回至所述客户端,令所述客户端根据所述异常页面视图对象渲染显示包括与所述异常类型编码对应的异常信息的页面。
6.根据权利要求5所述的装置,其特征在于,所述目标处理器对象继承自同一处理器接口类;
所述模型视图对象获取模块,还用于获取所述处理器接口类定义的参数处理函数;将所述资源请求中的请求参数作为函数参数传递给所述参数处理函数,获取所述参数处理函数返回的与所述资源请求对应的模型视图对象。
7.根据权利要求5或6所述的装置,其特征在于,所述模型视图对象包括逻辑视图名和模型数据,所述装置还包括视图解析模块,用于当所述回调函数未返回异常类型编码时,则通过所述前端控制器获取视图解析对象;通过所述视图解析对象对所述逻辑视图名进行解析,得到视图对象;通过所述视图对象渲染所述模型数据,得到响应数据;通过所述前端控制器将所述响应数据返回至客户端。
8.根据权利要求5或6所述的装置,其特征在于,所述装置还包括异常信息编码模块,用于获取异常信息,对各所述异常信息进行分类;按照各所述异常信息的类型进行编码,得到异常类型编码。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。