Spring-Boot 异常统一处理
在项目运行中,错误的抛出是很正常的,有数据验证错误,执行错误,连接错误等等各种错误类型,而根据我们定义的 API 来看,我们需要统一的返回一个约定好的错误格式。
默认错误异常抛出
Spring-Boot 提供了一个默认的错误页面 /error
@RequestMapping("/testExc[......]
在项目运行中,错误的抛出是很正常的,有数据验证错误,执行错误,连接错误等等各种错误类型,而根据我们定义的 API 来看,我们需要统一的返回一个约定好的错误格式。
Spring-Boot 提供了一个默认的错误页面 /error
@RequestMapping("/testExc[......]
Spring-Boot 提供内置的 Tomcat 直接打包为 Jar 格式后运行 @SpringBootApplication
Application
下的 main 方法即可,但是本人更喜欢使用 Tomcat 来运行应用,Spring-Boot 同样提供了方法。
Applicatio[......]
众所周知,Spring-Boot 使用 application.properties 进行配置基本参数,另外其实 Spring-Boot 自定义了一种 yml 格式也可以用于参数配置。
请求地址为 http://localhost:8080/test
se[......]
现代浏览器出于安全的考虑,使用 XMLHttpRequest对象发起 HTTP请求时必须遵守同源策略,否则就是跨域的HTTP请求,默认情况下是被禁止的。IP(域名)不同、或者端口不同,都会造成跨域问题。
在实际项目中,前端与后台经常会出现不在同一服务器的情况。并且在开发测试不同环境也会出现[……]
通常在构建 API 时会通过 在 HttpHeader 中传递 Token 参数来自动注入用户实体类,但是在 Swagger-UI 生成的文档中测试时,既没有输入 token 的地方,在参数列表中还存在用户实体类参数,造成了 Swagger-UI 与实际调用参数完全不符的情况。实际上使用一些简单的设[……]
在利用拦截器获取 token 后,需要调用 UserService 来获取用户,但是在测试中发现 UserService 为空,应该是没有注入成功,代码如下。
@Slf4j
@Component
public class AuthInterceptor extends HandlerInterce[......]
目前流行的 RESTful API 在风格设计中,都会有一个 token 作为登录设计,本文就来简单搭建一个这样的接口设计实现。
在 RESTful API 的构建中,接口文档的重要性不言而喻,而 Swagger-UI 就提供了一种自动构建接口文档的方式,它可以轻易的整合在 Spring-Boot 中,并且在写在代码中可以省去代码注释与接口文档中的重复工作,更是易于维护与更新。
<dependency[......]
项目地址https://github.com/YuLaiZ/spring-boot-mybatis-mysql-test-demo/
使用SpringBoot,通过Mybatis连接Mysql数据库,并添加基础日志配置
pom.xml 引用依赖
– spring boot 1.5.9.RELEA[……]