Springboot小工具学习

来源:互联网 发布:好的代理软件 编辑:程序博客网 时间:2024/05/22 17:07

1.Springbtoot返回使用自定义的FastJson,完美支持方式

首先在pom中引入fastJson jar包,fastjson可以通过设置注解如@JsonField(serialize=false)这种来控制某个dto类的属性展示,控制更加灵活

(1)method1:在启动类的时候注入一个bean

public class App {public static void main(String[] args) {SpringApplication.run(App.class, args);}@Beanpublic HttpMessageConverters fastJsonHttpMessageConverters() {FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig = new FastJsonConfig();//添加fastJson的配置信息,比如是否要格式化返回的json数据fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);fastConverter.setFastJsonConfig(fastJsonConfig);HttpMessageConverter<?> converter = fastConverter;return new HttpMessageConverters(converter);}}

(2)method2:集成WebMvcConfigurerAdapter

public class App extends WebMvcConfigurerAdapter{public static void main(String[] args) {SpringApplication.run(App.class, args);}@Overridepublic void configureMessageConverters(List<HttpMessageConverter<?>> converters) {super.configureMessageConverters(converters);FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();FastJsonConfig fastJsonConfig = new FastJsonConfig();//添加fastJson的配置信息,比如是否要格式化返回的json数据fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);fastConverter.setFastJsonConfig(fastJsonConfig);converters.add(fastConverter);}}


2.Springboot devTools实现代码热部署:原理是两个classloader,一个存不变的,一个存的是变化的class,有修改,就会重启一下变化的,更快

(1)引入jar和plugin

<dependency>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-devtools</artifactId>  <optional>true</optional>  <scope>ture</scope>  </dependency>  </dependencies>  <build>  <plugins>  <plugin>  <groupId>org.springframework.boot</groupId>  <artifactId>spring-boot-maven-plugin</artifactId>  <configuration>  <fork>true</fork>  </configuration>  </plugin>  </plugins>  </build>


3.sprintboot配置全局异常捕捉:比较好的文章结束@ControllerAdvice:http://www.tuicool.com/articles/EvuQVn


import javax.servlet.http.HttpServletRequest;import org.springframework.web.bind.annotation.ControllerAdvice;import org.springframework.web.bind.annotation.ExceptionHandler;import org.springframework.web.bind.annotation.ResponseBody;/** * 1、新建一个Class,这里取名为GlobalDefaultExceptionHandler * 2、在class上添加注解,@ControllerAdvice; * 3、在class中添加一个方法 * 4、在方法上添加@ExcetionHandler拦截相应的异常信息; * 5、如果返回的是View -- 方法的返回值是ModelAndView; * 6、如果返回的是String或者是Json数据,那么需要在方法上添加@ResponseBody注解. *  *  * @author Angel -- 守护天使 * @version v.0.1 * @date 2016年12月18日 */@ControllerAdvicepublic class GlobalDefaultExceptionHandler {@ExceptionHandler(Exception.class)@ResponseBodypublic String defaultExceptionHandler(HttpServletRequest req,Exception e){//是返回的String.//ModelAndView -- 介绍 模板引擎...?//ModelAndView mv = new ModelAndView();//mv.setViewName(viewName);return "对不起,服务器繁忙,请稍后再试!";}}









0 0
原创粉丝点击