WebMvcConfiguration
配置类 里面重写 extendMessageConverters 方法 并添加消息转换器/** *1、消息转化器 * 对象映射器:基于jackson将Java对象转为json,或者将json转为Java对象 * 将JSON解析为Java对象的过程称为 [从JSON反序列化Java对象] * 从Java对象生成JSON的过程称为 [序列化Java对象到JSON] */ public class JacksonObjectMapper extends ObjectMapper { public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd"; //public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm"; public static final String DEFAULT_TIME_FORMAT = "HH:mm:ss"; public JacksonObjectMapper() { super(); //收到未知属性时不报异常 this.configure(FAIL_ON_UNKNOWN_PROPERTIES, false); //反序列化时,属性不存在的兼容处理 this.getDeserializationConfig().withoutFeatures(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); SimpleModule simpleModule = new SimpleModule() .addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT))) .addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT))) .addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT))) .addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT))) .addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT))) .addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT))); //注册功能模块 例如,可以添加自定义序列化器和反序列化器 this.registerModule(simpleModule); } }
消息转化器添加
public class WebMvcConfiguration extends WebMvcConfigurationSupport { /** * 扩展我的消息转化器 */ @Override protected void extendMessageConverters(List<HttpMessageConverter<?>> converters) { //创建一个消息转换器对象 MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(); //创建一个对象转换器 对象转换器可以将Java对象系列化为json数据 和 反序列化为Java对象 converter.setObjectMapper(new JacksonObjectMapper()); converters.add(0,converter); } }
mybatis配置
mybatis: #mapper配置文件 mapper-locations: classpath:mapper/*.xml # 不用在 resource 创建全包名 子需要创建吗mapper包 type-aliases-package: com.sky.entity # 不用在 xml 的 parameterType 写 全包名 子需要写实体类 configuration: #开启驼峰命名 map-underscore-to-camel-case: true
- THE END -
最后修改:2024年4月23日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://www.forest88.top/2024/04/23/localdatetime%e6%b6%88%e6%81%af%e8%bd%ac%e6%8d%a2%e5%99%a8/
共有 0 条评论