spring boot項目配置FastJson


一、スプリングブックはデフォルトでJacksonを使ってjsonデータを解析します.本プロジェクトはfastjsonを使います.
  • fastjson依存ライブラリを導入する
  •                      comp.alibabababababa            fastjson            1.2.15        
  • fastjonを構成する(2つの方法をサポートする)
  • .
        (1)スタートクラスはextens WebMvcConfigrer Adapterを継承する
    @SpringBootApplication
    public class App extends WebMvcConfigurerAdapter {
        @Override
        public void configureMessageConverters(List> converters) {
            super.configureMessageConverters(converters);
            //      convert        ;
            FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
            //   fastJson      
            FastJsonConfig fastJsonConfig = new FastJsonConfig();
            fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
            //  convert       .
            fastConverter.setFastJsonConfig(fastJsonConfig);
            //  convert   converters  .
            converters.add(fastConverter);
        }
    
        
        public static void main(String[] args) {
            //       
            SpringApplication.run(App.class, args);
        }
    
    }
         (2)カバー方法configureMessage Coverters
     /**
         *         @Bean   fastJsonHttpMessageConvert
         * @return
         */
        @Bean
        public HttpMessageConverters fastJsonHttpMessageConverters() {
                // 1、        convert        ;
                FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
                
                //2、  fastJson      ,  :         json  ;
                FastJsonConfig fastJsonConfig = new FastJsonConfig();
                fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
                
                //3、 convert       .
                fastConverter.setFastJsonConfig(fastJsonConfig);
                 
                HttpMessageConverter> converter = fastConverter;
                return new HttpMessageConverters(converter);
        }
    二.グローバル異常設定
    /**
     * 1、    Class,     GlobalDefaultExceptionHandler
     * 2、 class     ,@ControllerAdvice;
     * 3、 class       
     * 4、      @ExcetionHandler         ;
     * 5、      View --        ModelAndView;
     * 6、      String   Json  ,          @ResponseBody  .
    
     */
    @ControllerAdvice
    public class GlobalDefaultExceptionHandler {
    	
    	@ExceptionHandler(Exception.class)
    	@ResponseBody
    	public String defaultExceptionHandler(HttpServletRequest req,Exception e){
    		//    String.
    		
    //		ModelAndView mv = new ModelAndView();
    //		mv.setViewName(viewName);
    		return "   ,     ,     !";
    	}
    	
    }