后端回写前端日期格式化

问题

  • 不进行格式化处理,就会导致传递的字符串很奇怪

解决方案

> 这里是引用

注解(字段)

<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.2</version>
</dependency>
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")@ExcelProperty(value = "创建时间", index = 8)private LocalDateTime createTime;

转换器(全局)

定义序列化和反序列的转换器(目前只针对日期进行转换)
在这里插入图片描述

package com.sky.json;import static com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES;/*** 对象映射器:基于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);}
}

在全局MVC配置中 加入刚才的配置 ,使用extendMessageConverters方法进行添加

package com.sky.config;
/*** 配置类,注册web层相关组件*/
@Configuration
@Slf4j
public class WebMvcConfiguration extends WebMvcConfigurationSupport {@Autowiredprivate JwtTokenAdminInterceptor jwtTokenAdminInterceptor;/*** 注册自定义拦截器** @param registry*/protected void addInterceptors(InterceptorRegistry registry) {log.info("开始注册自定义拦截器...");registry.addInterceptor(jwtTokenAdminInterceptor).addPathPatterns("/admin/**").excludePathPatterns("/admin/employee/login").excludePathPatterns("/admin/employee/download");}/*** 通过knife4j生成接口文档* @return*/@Beanpublic Docket docket() {ApiInfo apiInfo = new ApiInfoBuilder().title("苍穹外卖项目接口文档").version("2.0").description("苍穹外卖项目接口文档").build();Docket docket = new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo).select().apis(RequestHandlerSelectors.basePackage("com.sky.controller")).paths(PathSelectors.any()).build();return docket;}/*** 设置静态资源映射* @param registry*/protected void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");}/*** 扩展Spring mvc框架 的消息转换器* @param converters 转换器列表*/@Overrideprotected void extendMessageConverters(List<HttpMessageConverter<?>> converters) {log.info("开始扩展Spring mvc框架的消息转换器...");// 创建自定义的消息转换器MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();converter.setObjectMapper(new JacksonObjectMapper());// 将自定义的消息转换器添加到转换器列表中 0表示添加到最前面 优先级最高converters.add(0,converter);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149881.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

pandas外文文档快速入门

pandas资源可以在github中进行查询 特点&#xff1a; 1、基于numpy库进行开发 2、主要处理一维、二维的数据 3、可以处理sql&#xff0c;execl&#xff0c;时间表等复杂数据结构 导言 创建一维、二维表 创建的表格其实会和二维表很像 假设我们存储一些数据 其中&#xf…

2024年流动式起重机司机证考试题库及流动式起重机司机试题解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年流动式起重机司机证考试题库及流动式起重机司机试题解析是安全生产模拟考试一点通结合&#xff08;安监局&#xff09;特种作业人员操作证考试大纲和&#xff08;质检局&#xff09;特种设备作业人员上岗证考试…

单周涨粉过万,这3种AI绘画风格也太火了!

今天给大家分享小红书平台的一些爆款AI绘画类型&#xff0c;如果想要通过AI绘画赚钱或者想要快速起号一定要看&#xff01; 当然&#xff0c;除了小红书平台也可以发一些到其他自媒体平台上&#xff0c;变现方式有很多&#xff0c;可以开店铺卖壁纸、提示词、头像、接定制、合…

Linux centerOS 服务器搭建NTP服务

1&#xff0c;安装 NTP软件 sudo yum -y install ntp2&#xff0c;编辑配置文件 sudo vim /etc/ntp.conf 3&#xff0c;修改配置 在ntp.conf文件中&#xff0c;可以配置服务器从哪些上游时间源同步时间。如果你想让你的服务器对外同步时间&#xff0c;可以去掉restrict d…

蓝象智联与高德签署战略合作,共创时空“数聚港”

9月20日&#xff0c;高德地图副总裁兼高德云图总经理董振宁一行莅临蓝象智联杭州总部进行座谈交流。蓝象智联董事长童玲、CEO徐敏以及合伙人兼算法科学家毛仁歆给予热情接待。在双方的共同见证下&#xff0c;蓝象智联与高德云图签署战略合作协议&#xff0c;标志着双方在数据流…

牛客小白月赛101(上)

tb的区间问题 题目描述 登录—专业IT笔试面试备考平台_牛客网 运行代码 #include <iostream> #include <climits>using namespace std;int main() {int n, k;cin >> n >> k;int arr[50000];for (int i 0; i < n; i) {cin >> arr[i];}int …

从零开始,Docker进阶之路(一):Docker基础

一、简介与概述 1.Docker是一个开源的应用容器引擎&#xff0c;基于Go语言并遵从Apache2.0协议开源。 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的Linux机器上&#xff0c;也可以实现虚拟化。 2.Docker的主要…

可视化设计:华为不出,谁与争锋。

在可视化设计上&#xff0c;华为也是独树一帜的存在&#xff0c;本期分享几个华为的可视化作品。

vue echarts tooltip动态绑定模板,并且处理vue事件绑定

先上代码&#xff1a; tooltip: {// 这里是车辆iconshow: true,// trigger: "item",// backgroundColor: "transparent",appendToBody: true,textStyle: {color: "#ffffff" //设置文字颜色},formatter: (params) > {const TruckTooltip Vue.…

# 高可用的并发解决方案nginx+keepalived(三)

高可用的并发解决方案nginxkeepalived&#xff08;三&#xff09; 一、Nginx搭建图片服务器 针对任何站点&#xff0c;几乎都要访问图片&#xff0c;而一个网页里面几乎有好些张图片&#xff0c;这时候会占据大量tomcat连接&#xff0c;造成大量并发&#xff0c;我们可以通过…

动漫影视渲染合成- NVMe全闪NAS存储应用

电台、影视制作中心、动漫公司等需要进行大量视频渲染&#xff0c;动画渲染的机构&#xff0c;选用NVMe全闪存储 NAS性能发挥稳定

第十四届蓝桥杯嵌入式国赛

一. 前言 本篇博客主要讲述十四届蓝桥杯嵌入式的国赛题目&#xff0c;包括STM32CubeMx的相关配置以及相关功能实现代码以及我在做题过程中所遇到的一些问题和总结收获。如果有兴趣的伙伴还可以去做做其它届的真题&#xff0c;可去 蓝桥云课 上搜索历届真题即可。 二. 题目概述 …

nVisual到底能为机房运维管理解决哪些问题?

一、nVisual是什么&#xff1f; nVisual是一套运维管理软件&#xff0c;以可视化的方式记录机房内设备信息、物理位置、物理连接关系等&#xff0c;通过nVisual可以建立完善的设备档案。能真实还原机房平面图、还可画机柜布置图、不仅可以管理设备还可以管理设备端口和链路&am…

从零开始构建后台管理系统列表:新手友好教程,全程使用 HTML+CSS+JavaScript,涵盖增删查改、导入导出、排序等功能(含完整源码)

b站视频演示效果&#xff1a; 效果图&#xff1a; 完整代码&#xff1a; <!DOCTYPE html> <html> <head><meta charset"utf-8"><title>后台管理系统</title><!-- 引入正确的 Vue.js 版本 --><script src"https:/…

有关 签到/签退 业务逻辑 的梳理与学习

导言 最近搞到了个签到管理&#xff0c;其中的业务逻辑感觉有点复杂(可能是我的方向不对),虽然是实现了&#xff0c;不过代码和逻辑很多&#xff0c;也有些乱&#xff0c;想趁着还记得逻辑来记录梳理一下&#xff0c;看看自己以后有没有更好的思路&#xff0c;或者有大佬有思路…

Day 43~48 smbms

SMBMS SMBMS是超市订单管理系统的简称 数据库&#xff1a; 项目如何让搭建&#xff1f; 考虑使用不使用Maven&#xff1f; 依赖&#xff0c;jar 项目搭建准备工作 1.搭建一个mavenweb项目 2.配置Tomcat 3.测试项目是否能够跑起来 4.导入项目中会遇到的jar包 jsp,servle…

html TAB切换按钮变色、自动生成table--使用函数优化结构

<!DOCTYPE html> <head> <meta charset"UTF-8"> <title>Dynamic Tabs with Table Data</title> <style> /* 简单的样式 */ .tab-content { display: none; border: 1px solid #ccc; padding: 1px; marg…

基于Springboot社区论坛JAVA|VUE|SSM计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

2024双11买什么东西比较好?2024双十一好物推荐

双十一各种爆款商品&#xff0c;打折商品非常多&#xff0c;容易让人挑花眼也容易落入消费主义的陷阱&#xff0c;买回家后发现并不实用&#xff0c;甚至可能是自己平常生活中根本用不上的东西&#xff01;即使是打折活动也要在购买前考虑一下自己是否需要&#xff0c;在日常生…

Android (rust) vulkan (JNI) 画一个三角形: VulkanSurfaceView 初始化

上文说到, vulkan 作为一种 GPU 编程接口标准, 具有很好的跨平台能力. 并且在 wayland (GNU/Linux) 成功使用 vulkan 绘制了一个三角形. 今天, 我们同样使用 vulkano (rust), 在 Android (手机) 也画一个三角形吧 ~ 本文的解决方案主要参考了 stackoverflow 的一篇文章 (链接…