如何避免在Spring MVC实践中犯下哪些常见错误?

2026-04-13 05:121阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计772个文字,预计阅读时间需要4分钟。

如何避免在Spring MVC实践中犯下哪些常见错误?

使用Spring MVC实现RESTful风格的接口,实现前后端分离,后端仅提供数据接口,不负责页面渲染。后端统一处理:请求参数校验、响应数据格式、全局异常处理。

使用spring mvc提供restful风格的接口,实现前后端分离,后端只提供数据接口,而不做页面渲染。因此可对接口做统一处理:

  1. 请求参数校验
  2. 响应数据格式
  3. 全局异常处理

通过以上统一处理,开发人员可专注于业务处理,把校验,异常响应的逻辑分离出来。

请求参数校验:

对于url中的参数

  • 如果添加@RequestParam,但没有传递该参数,则抛出MissingServletRequestParameterException异常
  • 如果添加@Max等注解,同时不满足该条件,抛出ConstraintViolationException 或BindException异常

对于request body请求体中的参数

  • Bean前添加@RequestBody,如果没有请求体,抛出HttpMessageNotReadableException异常
  • 在bean前添加@Validate注解,bean中属性添加@Max,@NotNull等注解,即对响应属性进行校验,如果不满足,抛出MethodArguementNotValidException
  • @Validate内可添加group,表明需要校验的操作,@Max可添加groups,当groups包含group时,则进行校验。
阅读全文

本文共计772个文字,预计阅读时间需要4分钟。

如何避免在Spring MVC实践中犯下哪些常见错误?

使用Spring MVC实现RESTful风格的接口,实现前后端分离,后端仅提供数据接口,不负责页面渲染。后端统一处理:请求参数校验、响应数据格式、全局异常处理。

使用spring mvc提供restful风格的接口,实现前后端分离,后端只提供数据接口,而不做页面渲染。因此可对接口做统一处理:

  1. 请求参数校验
  2. 响应数据格式
  3. 全局异常处理

通过以上统一处理,开发人员可专注于业务处理,把校验,异常响应的逻辑分离出来。

请求参数校验:

对于url中的参数

  • 如果添加@RequestParam,但没有传递该参数,则抛出MissingServletRequestParameterException异常
  • 如果添加@Max等注解,同时不满足该条件,抛出ConstraintViolationException 或BindException异常

对于request body请求体中的参数

  • Bean前添加@RequestBody,如果没有请求体,抛出HttpMessageNotReadableException异常
  • 在bean前添加@Validate注解,bean中属性添加@Max,@NotNull等注解,即对响应属性进行校验,如果不满足,抛出MethodArguementNotValidException
  • @Validate内可添加group,表明需要校验的操作,@Max可添加groups,当groups包含group时,则进行校验。
阅读全文