@Test
public void test8_2() throws Exception {
// ResultActions actions = mockMvc.perform((post("/jsonp-fastjsonview/test8?callback=fnUpdateSome").characterEncoding(
// "UTF-8")));
// actions.andDo(print());
// actions.andExpect(status().isOk()).andExpect(content().contentType(APPLICATION_JAVASCRIPT))
// .andExpect(content().string("fnUpdateSome({\"id\":100,\"name\":\"测试\"})"));
MvcResult mvcResult = mockMvc.perform(post("/jsonp-fastjsonview/test8?callback=fnUpdateSome").characterEncoding("UTF-8"))
.andExpect(request().asyncStarted())
.andReturn();
mockMvc.perform(asyncDispatch(mvcResult))
.andExpect(status().isOk())
.andExpect(content().contentType(FastJsonHttpMessageConverter.APPLICATION_JAVASCRIPT))
.andExpect(content().string("/**/fnUpdateSome({})"));
}
java类com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter的实例源码
FastJsonHttpMessageConverterCase2Test.java 文件源码
项目:GitHub
阅读 34
收藏 0
点赞 0
评论 0
FastJsonConfiguration.java 文件源码
项目:springboot_op
阅读 31
收藏 0
点赞 0
评论 0
/**
* 修改自定义消息转换器
* @param converters 消息转换器列表
*/
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
//调用父类的配置
super.configureMessageConverters(converters);
//创建fastJson消息转换器
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
//处理中文乱码问题
List<MediaType> fastMediaTypes = new ArrayList<>();
fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
fastConverter.setSupportedMediaTypes(fastMediaTypes);
//创建配置类
FastJsonConfig fastJsonConfig = new FastJsonConfig();
//修改配置返回内容的过滤
fastJsonConfig.setSerializerFeatures(
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteNullStringAsEmpty
);
fastConverter.setFastJsonConfig(fastJsonConfig);
//将fastjson添加到视图消息转换器列表内
converters.add(fastConverter);
}
WebMvcConfig.java 文件源码
项目:sns-todo
阅读 27
收藏 0
点赞 0
评论 0
private FastJsonHttpMessageConverter fastJsonHttpMessageConverter() {
FastJsonHttpMessageConverter httpMessageConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(SerializerFeature.QuoteFieldNames,
SerializerFeature.WriteEnumUsingToString,
SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteDateUseDateFormat);
fastJsonConfig.setSerializeFilters(new ValueFilter() {
@Override
public Object process(Object o, String s, Object source) {
if (source == null) {
return "";
}
if (source instanceof Date) {
return ((Date) source).getTime();
}
return source;
}
});
httpMessageConverter.setFastJsonConfig(fastJsonConfig);
return httpMessageConverter;
}
FastJsonConfiguration.java 文件源码
项目:ontology_setting
阅读 25
收藏 0
点赞 0
评论 0
/**
* 修改自定义消息转换器
* @param converters 消息转换器列表
*/
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
//调用父类的配置
super.configureMessageConverters(converters);
//创建fastJson消息转换器
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
//处理中文乱码问题
List<MediaType> fastMediaTypes = new ArrayList<>();
fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
fastConverter.setSupportedMediaTypes(fastMediaTypes);
//创建配置类
FastJsonConfig fastJsonConfig = new FastJsonConfig();
//修改配置返回内容的过滤
fastJsonConfig.setSerializerFeatures(
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteMapNullValue,
SerializerFeature.WriteNullStringAsEmpty
);
fastConverter.setFastJsonConfig(fastJsonConfig);
//将fastjson添加到视图消息转换器列表内
converters.add(fastConverter);
}
WebMVCConfig.java 文件源码
项目:spring-boot
阅读 28
收藏 0
点赞 0
评论 0
/**
* 自定义 一个 json 转换器
* 详见 fast json 官方文档
*
* @return
*/
private HttpMessageConverter getFastJsonConverter() {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
//自定义配置...
com.alibaba.fastjson.support.config.FastJsonConfig config = new com.alibaba.fastjson.support.config.FastJsonConfig();
SerializerFeature[] features = {
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteDateUseDateFormat,
SerializerFeature.PrettyFormat};
config.setSerializerFeatures(features);
config.setDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
config.setCharset(StandardCharsets.UTF_8);
converter.setFastJsonConfig(config);
return converter;
}
WebConfig.java 文件源码
项目:easyweb
阅读 28
收藏 0
点赞 0
评论 0
/**
* 配置使用springmvc fastjson
* @return
*/
@Bean
public HttpMessageConverters fastJsonHttpMessageConverters() {
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
fastConverter.setFastJsonConfig(fastJsonConfig);
HttpMessageConverter<?> converter = fastConverter;
return new HttpMessageConverters(converter);
}
MessageConverterConfig.java 文件源码
项目:springbootWeb
阅读 31
收藏 0
点赞 0
评论 0
@Bean
public HttpMessageConverters fastJsonHttpMessageConverters() {
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
//处理中文乱码
List<MediaType> fastMediaTypes = new ArrayList<>();
fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
fastConverter.setSupportedMediaTypes(fastMediaTypes);
return new HttpMessageConverters((HttpMessageConverter<?>) fastConverter);
}
MyWebMvcConfigurerAdapter.java 文件源码
项目:spring-boot-frameset
阅读 30
收藏 0
点赞 0
评论 0
/**
* 配置fastJson
* @param converters
*/
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
fastConverter.setFastJsonConfig(fastJsonConfig);
converters.add(fastConverter);
super.configureMessageConverters(converters);
}
MyWebMvcConfigurerAdapter.java 文件源码
项目:spring-boot-frameset
阅读 30
收藏 0
点赞 0
评论 0
/**
* 配置fastJson
* @param converters
*/
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
fastConverter.setFastJsonConfig(fastJsonConfig);
converters.add(fastConverter);
super.configureMessageConverters(converters);
}
MvcConfig.java 文件源码
项目:jbase
阅读 30
收藏 0
点赞 0
评论 0
@Bean
public FastJsonHttpMessageConverter fastJsonHttpMessageConverters() {
ParserConfig.getGlobalInstance().setAutoTypeSupport(true);
FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
FastJsonConfig fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat);
fastConverter.setFastJsonConfig(fastJsonConfig);
return fastConverter;
}
Issue1405.java 文件源码
项目:GitHub
阅读 24
收藏 0
点赞 0
评论 0
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
converters.add(converter);
}
Issue1367.java 文件源码
项目:GitHub
阅读 26
收藏 0
点赞 0
评论 0
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
converters.add(converter);
}
FastJsonHttpMessageConverterJSONPCaseTest.java 文件源码
项目:GitHub
阅读 28
收藏 0
点赞 0
评论 0
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(0, new FastJsonHttpMessageConverter());
super.extendMessageConverters(converters);
}
FastJsonHttpMessageConverterCase2Test.java 文件源码
项目:GitHub
阅读 24
收藏 0
点赞 0
评论 0
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(0, new FastJsonHttpMessageConverter());
super.extendMessageConverters(converters);
}
FastJsonHttpMessageConverterCase2Test.java 文件源码
项目:GitHub
阅读 33
收藏 0
点赞 0
评论 0
@Test
public void test8() throws Exception {
mockMvc.perform(
(post("/jsonp-fastjsonview/test8").characterEncoding("UTF-8")
.contentType(FastJsonHttpMessageConverter.APPLICATION_JAVASCRIPT))).andExpect(status().isOk()).andDo(print());
}
FastJsonHttpMessageConverterTest.java 文件源码
项目:GitHub
阅读 31
收藏 0
点赞 0
评论 0
@SuppressWarnings("deprecation")
public void test_read() throws Exception {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
converter.setCharset(Charset.forName("UTF-8"));
Assert.assertEquals(Charset.forName("UTF-8"), converter.getCharset());
converter.setFeatures(SerializerFeature.BrowserCompatible);
Assert.assertEquals(1, converter.getFeatures().length);
Assert.assertEquals(SerializerFeature.BrowserCompatible,
converter.getFeatures()[0]);
Assert.assertNull(converter.getDateFormat());
converter.setDateFormat("yyyyMMdd");
converter.setFilters(serializeFilter);
Assert.assertEquals(1, converter.getFilters().length);
Assert.assertEquals(serializeFilter, converter.getFilters()[0]);
converter.addSerializeFilter(serializeFilter);
Assert.assertEquals(2, converter.getFilters().length);
converter.addSerializeFilter(null);
converter.setSupportedMediaTypes(Arrays
.asList(new MediaType[] { MediaType.APPLICATION_JSON_UTF8 }));
Assert.assertEquals(1, converter.getSupportedMediaTypes().size());
Method method = FastJsonHttpMessageConverter.class.getDeclaredMethod(
"supports", Class.class);
method.setAccessible(true);
method.invoke(converter, int.class);
HttpInputMessage input = new HttpInputMessage() {
public HttpHeaders getHeaders() {
// TODO Auto-generated method stub
return null;
}
public InputStream getBody() throws IOException {
return new ByteArrayInputStream("{\"id\":123}".getBytes(Charset
.forName("UTF-8")));
}
};
VO vo = (VO) converter.read(VO.class, input);
Assert.assertEquals(123, vo.getId());
final ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
HttpOutputMessage out = new HttpOutputMessage() {
public HttpHeaders getHeaders() {
return new HttpHeaders();
}
public OutputStream getBody() throws IOException {
return byteOut;
}
};
converter.write(vo, MediaType.TEXT_PLAIN, out);
byte[] bytes = byteOut.toByteArray();
Assert.assertEquals("{\"id\":\"123\"}", new String(bytes, "UTF-8"));
}
FastJsonHttpMessageConverterTest.java 文件源码
项目:GitHub
阅读 29
收藏 0
点赞 0
评论 0
public void test_1() throws Exception {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
Assert.assertNotNull(converter.getFastJsonConfig());
converter.setFastJsonConfig(new FastJsonConfig());
converter.canRead(VO.class, MediaType.APPLICATION_JSON_UTF8);
converter.canWrite(VO.class, MediaType.APPLICATION_JSON_UTF8);
converter.canRead(VO.class, VO.class, MediaType.APPLICATION_JSON_UTF8);
converter.canWrite(VO.class, VO.class, MediaType.APPLICATION_JSON_UTF8);
HttpInputMessage input = new HttpInputMessage() {
public HttpHeaders getHeaders() {
// TODO Auto-generated method stub
return null;
}
public InputStream getBody() throws IOException {
return new ByteArrayInputStream("{\"id\":123}".getBytes(Charset
.forName("UTF-8")));
}
};
VO vo = (VO) converter.read(VO.class, VO.class, input);
Assert.assertEquals(123, vo.getId());
final ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
HttpOutputMessage out = new HttpOutputMessage() {
public HttpHeaders getHeaders() {
return new HttpHeaders();
}
public OutputStream getBody() throws IOException {
return byteOut;
}
};
converter.write(vo, VO.class, MediaType.TEXT_PLAIN, out);
byte[] bytes = byteOut.toByteArray();
Assert.assertEquals("{\"id\":123}", new String(bytes, "UTF-8"));
converter.setSupportedMediaTypes(Collections
.singletonList(MediaType.APPLICATION_JSON));
converter.write(vo, VO.class, null, out);
converter.write(vo, VO.class, MediaType.ALL, out);
HttpOutputMessage out2 = new HttpOutputMessage() {
public HttpHeaders getHeaders() {
return new HttpHeaders() {
private static final long serialVersionUID = 1L;
@Override
public MediaType getContentType() {
return MediaType.APPLICATION_JSON;
}
@Override
public long getContentLength() {
return 1;
}
};
}
public OutputStream getBody() throws IOException {
return byteOut;
}
};
converter.write(vo, VO.class, MediaType.ALL, out2);
}
WebMvcConfigurer.java 文件源码
项目:eagle-oj-api
阅读 32
收藏 0
点赞 0
评论 0
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter();
converters.add(converter);
}
ConfigServicePropertySourceLocator.java 文件源码
项目:configx
阅读 31
收藏 0
点赞 0
评论 0
public ConfigServicePropertySourceLocator(ConfigClientProperties clientProperties) {
this.clientProperties = clientProperties;
restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new FastJsonHttpMessageConverter());
}
WebMvcConfigurer.java 文件源码
项目:myfavor
阅读 38
收藏 0
点赞 0
评论 0
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
FastJsonHttpMessageConverter converter= new FastJsonHttpMessageConverter();
converters.add(converter);
}
HttpClientTemplate.java 文件源码
项目:tasfe-framework
阅读 31
收藏 0
点赞 0
评论 0
private HttpClientTemplate() {
// 长连接保持30秒
PoolingHttpClientConnectionManager pollingConnectionManager = new PoolingHttpClientConnectionManager(timeToLive, TimeUnit.SECONDS);
// 总连接数
pollingConnectionManager.setMaxTotal(maxTotal);
// 同路由的并发数
pollingConnectionManager.setDefaultMaxPerRoute(defaultMaxPerRoute);
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
httpClientBuilder.setConnectionManager(pollingConnectionManager);
// 重试次数,默认是3次,没有开启
httpClientBuilder.setRetryHandler(new DefaultHttpRequestRetryHandler(retryCount, requestSentRetryEnabled));
// 保持长连接配置,需要在头添加Keep-Alive
httpClientBuilder.setKeepAliveStrategy(new DefaultConnectionKeepAliveStrategy());
List<Header> headers = new ArrayList<>();
// 参考:http://www.cnblogs.com/sink_cup/archive/2011/03/15/http_user_agent.html
// headers.add(new BasicHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.16 Safari/537.36"));
// 不需要设置,可能会乱码,请参考:http://www.crifan.com/set_accept_encoding_header_to_gzip_deflate_return_messy_code/
// headers.add(new BasicHeader("Accept-Encoding", "gzip,deflate"));
// headers.add(new BasicHeader("Accept-Language", "zh-CN"));
headers.add(new BasicHeader("Connection", "Keep-Alive"));
httpClientBuilder.setDefaultHeaders(headers);
HttpClient httpClient = httpClientBuilder.build();
// httpClient连接配置,底层是配置RequestConfig
HttpComponentsClientHttpRequestFactory clientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory(httpClient);
// 连接超时
clientHttpRequestFactory.setConnectTimeout(connectTimeout);
// 数据读取超时时间,即SocketTimeout
clientHttpRequestFactory.setReadTimeout(readTimeout);
// 连接不够用的等待时间,不宜过长,必须设置,比如连接不够用时,时间过长将是灾难性的
clientHttpRequestFactory.setConnectionRequestTimeout(connectionRequestTimeout);
// 缓冲请求数据,默认值是true。通过POST或者PUT大量发送数据时,建议将此属性更改为false,以免耗尽内存。
if (!bufferRequestBody) {
clientHttpRequestFactory.setBufferRequestBody(false);
}
// 添加内容转换器
// List<HttpMessageConverter<?>> messageConverters = new ArrayList<>();
messageConverters.add(new FastJsonHttpMessageConverter());
messageConverters.add(new StringHttpMessageConverter(Charset.forName(charset)));
messageConverters.add(new ByteArrayHttpMessageConverter());
super.setMessageConverters(messageConverters);
super.setRequestFactory(clientHttpRequestFactory);
super.setErrorHandler(new DefaultResponseErrorHandler());
}
FastJSONConfig.java 文件源码
项目:api-server-seed
阅读 30
收藏 0
点赞 0
评论 0
@Bean
public HttpMessageConverters customConverters() {
HttpMessageConverter<?> additional = new FastJsonHttpMessageConverter();
return new HttpMessageConverters(additional);
}
SpringConf.java 文件源码
项目:java-fast-framework
阅读 29
收藏 0
点赞 0
评论 0
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
// 添加JSON支持
converters.add(new FastJsonHttpMessageConverter());
}
WebConfig.java 文件源码
项目:spring4-2015
阅读 23
收藏 0
点赞 0
评论 0
@Override
public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(new FastJsonHttpMessageConverter());
}