当前位置: 首页 > news >正文

做网站的知名品牌公司做营销看的网站

做网站的知名品牌公司,做营销看的网站,手机页面网站模板怎么卖,小程序商城的服务哪家好ControllerAdvice介绍 ControllerAdvice 是 Spring 框架提供的一个注解#xff0c;用于定义一个全局的异常处理类或者说是控制器增强类#xff08;controller advice class#xff09;。这个特性特别适用于那些你想应用于整个应用程序中多个控制器的共有行为#xff0c;比…ControllerAdvice介绍 ControllerAdvice 是 Spring 框架提供的一个注解用于定义一个全局的异常处理类或者说是控制器增强类controller advice class。这个特性特别适用于那些你想应用于整个应用程序中多个控制器的共有行为比如全局异常处理、数据绑定、响应处理等。通过使用 ControllerAdvice你可以避免在每个控制器中重复相同的代码从而提高代码的可维护性和整洁性。 ControllerAdvice源码 Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) Documented Component public interface ControllerAdvice {AliasFor(annotation Component.class, attribute value)String name() default ;AliasFor(basePackages)String[] value() default {};AliasFor(value)String[] basePackages() default {};Class?[] basePackageClasses() default {};Class?[] assignableTypes() default {};Class? extends Annotation[] annotations() default {};} 源代码截图 ControllerAdvice属性介绍 name(): 这是一个继承自 Component 的属性默认值为空字符串。可以为 Bean 指定一个名称便于在 Spring 上下文中引用。 value() 和 basePackages()以及它们之间的 AliasFor: 这两个属性是等效的用于指定哪些包下的控制器类应受此 advice 管理。默认值为空数组意味着如果不指定则对所有包的控制器生效。 ControllerAdvice(basePackages {com.chengxuyuan.controller})。 basePackageClasses(): 与指定包名不同这个属性允许通过指定类来确定包的基点。Spring 会查找这些类所在的包及子包下的控制器应用此 advice。 assignableTypes(): 允许你指定一个或多个类类型数组只有继承或实现了这些类的控制器才会受到此 advice 影响。 ControllerAdvice(assignableTypes {DemoCustomController.class})。 annotations(): 虽然你的代码示例中包含了此属性但在 Spring Framework 的实际 ControllerAdvice 定义中并没有直接包含 annotations 属性来基于注解匹配控制器。这个概念可能源自于对 AOP 或其他自定义扩展方式的理解但它不是标准 ControllerAdvice 的一部分。此属性用于说明如果要根据控制器上的特定注解来应用 advice理论上可以通过自定义逻辑来实现 ControllerAdvice注解使用场景 全局异常处理 你可以结合 ExceptionHandler 注解在 ControllerAdvice 标注的类中定义方法来处理特定类型的异常。这些异常处理方法会应用到标记有 RequestMapping 的所有控制器方法上从而实现全局异常处理机制。 模型属性添加 使用 ModelAttribute 注解可以在每次请求处理之前向模型中添加属性。这样你可以在不修改每个控制器方法的情况下为所有或指定包下的控制器添加共享数据。 全局数据绑定和验证 可以通过 InitBinder 方法自定义数据绑定和验证逻辑影响所有控制器中的数据绑定行为。 响应体处理 虽然不直接是 ControllerAdvice 的一部分但结合 ResponseBody 和 ResponseEntity可以用来定制全局的响应体处理逻辑比如统一设置响应头或响应状态码。 特定控制器或包的应用 通过使用 basePackages 或  assignableTypes 属性可以指定 ControllerAdvice 应用于哪些特定的控制器或包下的控制器而不是全局所有。 ControllerAdvice测试示例代码 示例代码 一 ControllerAdvice public class GlobalControllerAdvice {/*** 全局异常处理*/ExceptionHandler(Exception.class)public ModelAndView handleException(Exception ex) {ModelAndView modelAndView new ModelAndView(error);modelAndView.addObject(errorMessage, ex.getMessage());return modelAndView;}/*** 全局数据绑定*/InitBinderpublic void initBinder(WebDataBinder binder) {SimpleDateFormat dateFormat new SimpleDateFormat(yyyy-MM-dd);dateFormat.setLenient(false);binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));}/*** 全局模型属性*/ModelAttribute(appName)public String appName() {return Demo Application;} }
http://www.hkea.cn/news/14357732/

相关文章:

  • 网站建成后 再添加小功能麻烦吗wordpress博客模板
  • 旅行社静态模板网站公司企业网站建设目的
  • 湛江网站建设详细策划网站生成app工具
  • 有帮人做网站的人吗做网站网站赚
  • 重庆企业网站推广平台西安网站的设计说明
  • 怎么用手机搭建网站企业办公自动化管理系统
  • 做网站之前要怎样准备图片湖南人文科技学院继续教育学院
  • 柳州做网站优化凡客官网首页
  • 网站建设询价函烟台网站建设策划方案
  • 南宁网站建设哪家公网站如何盈利
  • 新潮狼网站建设如何给自己开发的网站加域名
  • 做网站搜索框seo软文推广
  • 合肥建站公司有哪家招聘的设计制作活动主题
  • 货代如何做亚马逊和速卖通网站a站app
  • 飓风算法恢复的网站城乡规划专业招聘信息网
  • 专业的会议网站建设哪个网站做的游戏好玩
  • 免费的行情软件网站下载免费那个网站做二手设备比较好
  • 怎么查公司网站有没有中文域名小米的网站设计
  • 网站new图标网站图片一般分辨率做多大
  • 网站首页网址应该有对应的域名秦皇岛营销式网站
  • 郑州注册公司网上核名网站中华建设杂志社网站
  • wordpress适合大型网站吗顾问
  • 衡阳网站排名优化费用销售管理软件系统
  • 网站 文件夹 上传牡丹江建站
  • 企业网站建设收费做网站接私活流程
  • html商业网站模板沈阳百度推广优化
  • 吉安市建设规划局网站佛山小程序开发制作
  • 厦门有没有做网站的网站开发的基本流程图
  • 适合用于网站开发的工具短链接生成二维码
  • 深圳网站建设 联雅网页与网站的区别与联系是什么