commit | author | age
|
37f846
|
1 |
package com.odcc.cpzidc.framework.config; |
Y |
2 |
|
|
3 |
import com.fasterxml.jackson.annotation.JsonInclude; |
|
4 |
import com.fasterxml.jackson.databind.MapperFeature; |
|
5 |
import com.fasterxml.jackson.databind.ObjectMapper; |
|
6 |
import com.fasterxml.jackson.databind.module.SimpleModule; |
|
7 |
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
|
8 |
import org.springframework.context.annotation.Bean; |
|
9 |
import org.springframework.context.annotation.Configuration; |
|
10 |
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; |
|
11 |
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; |
|
12 |
|
|
13 |
import java.text.SimpleDateFormat; |
|
14 |
import java.util.TimeZone; |
|
15 |
|
|
16 |
/** |
|
17 |
* Jackson配置 |
|
18 |
* |
|
19 |
* @author ruoyi |
|
20 |
* |
|
21 |
*/ |
|
22 |
@Configuration |
|
23 |
public class JacksonConfig |
|
24 |
{ |
|
25 |
@Bean |
|
26 |
public MappingJackson2HttpMessageConverter jackson2HttpMessageConverter() |
|
27 |
{ |
|
28 |
final Jackson2ObjectMapperBuilder builder = new Jackson2ObjectMapperBuilder(); |
|
29 |
builder.serializationInclusion(JsonInclude.Include.NON_NULL); |
|
30 |
final ObjectMapper objectMapper = builder.build(); |
|
31 |
SimpleModule simpleModule = new SimpleModule(); |
|
32 |
// Long 转为 String 防止 js 丢失精度 |
|
33 |
simpleModule.addSerializer(Long.class, ToStringSerializer.instance); |
|
34 |
objectMapper.registerModule(simpleModule); |
|
35 |
// 忽略 transient 关键词属性 |
|
36 |
objectMapper.configure(MapperFeature.PROPAGATE_TRANSIENT_MARKER, true); |
|
37 |
// 时区设置 |
|
38 |
objectMapper.setTimeZone(TimeZone.getTimeZone("GMT+8")); |
|
39 |
objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); |
|
40 |
return new MappingJackson2HttpMessageConverter(objectMapper); |
|
41 |
} |
|
42 |
} |