Java 日期接收报错:could not be parsed, unparsed text found at index 10(已解决)

这篇具有很好参考价值的文章主要介绍了Java 日期接收报错:could not be parsed, unparsed text found at index 10(已解决)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


问题背景

使用 Element-UI 的 el-date-picker 组件 将日期转给Java,Java报错

java.time.format.DateTimeParseException: Text ‘2024-01-03T16:00:00.000Z’ could not be parsed, unparsed text found at index 10

代码

  • Vue
<el-date-picker
  v-model="form.removalDate"
  type="date"
  placeholder="选择日期"
  style="width: 300px"
/>
  • Java实体类
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class AppProjects implements Serializable {
    
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date removalDate;
    
}
  • Java控制层
import com.alibaba.fastjson.JSONObject;

public Object update(@RequestBody JSONObject object) {
    AppProjects appProjects = object.toJavaObject(AppProjects.class);
    boolean update = appProjectsService.updateById(appProjects);
    return update;
}

当执行 toJavaObject 方法时,报错如下

java.time.format.DateTimeParseException: Text ‘2024-01-03T16:00:00.000Z’ could not be parsed, unparsed text found at index 10

  • 修改Java控制层

更改为使用实体类接收参数 @RequestBody AppProjects appProjects

public Object update(@RequestBody AppProjects appProjects) {
    boolean update = appProjectsService.updateById(appProjects);
    return update;
}

执行方法时不报错,但是日期的值却比实际少一天,为什么呢?
因为前端实际选择日期为 ‘2024-01-04’ ,传值为 ‘2024-01-03T16:00:00.000Z’,该时区不是东八区,使用实体类接收时去掉了时分秒,导致日期保存为 ‘2024-01-03’

已经不报错了,那么解决日期问题就简单了!

解决方法

在 el-date-picker组件 使用属性 value-format="yyyy-MM-dd" 将绑定的格式不指定为 Date 对象,绑定的值会转为 string 对象,那么实际选择哪一天的日期,就是 yyyy-MM-dd 格式的字符串啦!这样后端就能正确接收日期了文章来源地址https://www.toymoban.com/news/detail-818806.html

<el-date-picker
  v-model="form.removalDate"
  type="date"
  value-format="yyyy-MM-dd"
  placeholder="选择日期"
  style="width: 300px"
/>

到了这里,关于Java 日期接收报错:could not be parsed, unparsed text found at index 10(已解决)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux配置hadoop文件报错 ERROR: JAVA_HOME is not set and could not be found(超详细)

    目录 一、hadoop配置文件的一些报错情况 1、ERROR: JAVA_HOME is not set and could not be found (1)查看我们的jdk所在的位置 代码:pwd (2)进入配置环境 (3)最重要的事情!!记得更新环境变量  (4)查看java版本 (5)最后再去运行就好了 2、ERROR: JAVA HOME /cpt/jieya/jdk does not exis

    2024年02月08日
    浏览(26)
  • Unity导入图片报错File could not be read

    Could not create asset from Assets/英雄系统_段位2-标注.png: File could not be read 双击图片旋转几次

    2024年02月14日
    浏览(40)
  • kafka报错: (localhost/127.0.0.1:9092) could not be established. Broker may not be available.

    具体报错:[Producer clientId=console-producer] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient) 使用的指令: 之后输入数据回车报错 看了下相关配置文件 从上述结果来看,是报错和配置里面的地址有关系,只需要改用配置里

    2024年02月12日
    浏览(50)
  • 报错:Unit network.service could not be found.[已解决]

    1、报错:Unit network.service could not be found. 解决方法: yum install network-scripts  2、下载完后,查看network的运行状态,输入: systemctl status  network 3、 此时network处于关闭状态,需要启动network,输入: systemctl start network 4、 报错,查看network.service的运行状态,输入: systemctl statu

    2024年02月02日
    浏览(28)
  • 解决 java.text.ParseException: Unparseable date

    想根据指定字符串日期,获取是第几周,结果报错了 经过查找,发现是因为SimpleDateFormat里面忘记加 “yyyy-MM-dd”, 原来的 改过后 最终代码

    2024年02月13日
    浏览(30)
  • 报错:Connection to node -1 (localhost/127.0.0.1:9092) could not be established.

    在使用java客户端连接kafka时,怎么都连接不上,防火墙端口也开放了,后面查资料得知需要将修改kafka安装目录下的config/server.properties文件: 但是这样在执行kafka生产者命令时又出现问题:Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. kafka启动

    2024年02月11日
    浏览(60)
  • Qt-解决异常报错“QAxBase::setControl: requested control XXX could not be instantiated”

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处        使用Qt开发的过程中,QAxObject是经常用到的一个类,用于操作Windows中各种COM接口,进而实现各类功能。        WbemScripting.SWbemLocator是我想要通过QAxObject访问的对

    2024年02月12日
    浏览(28)
  • 【Android Studio】安装app报错Installation did not succeed. The application could not be installed: INSTALL

    安装app demo报错;app安装不上 Installation did not succeed. The application could not be installed: INSTALL_FAILED_INSUFFICIENT_STORAGE The device needs more free storage to install the application (extra space is needed in addition to APK size). 程序或手机内存空间不足 清理程序内存:Build - Clean Project 清理手机内存:清理多

    2024年02月07日
    浏览(43)
  • 服务器处理发生异常:java.text.ParseException: Unparseable date

    服务器处理发生异常:java.text.ParseException: Unparseable date: “2023/03/03” 上传时间字段,与Date字段数据位数不匹配,Java类型:Date默认带有年月日 时分秒yyyy-mm-dd HH:mm:ss,若传入的数据位数不对、匹配不对就会抛出这个异常。 比如说:你的存表类型为date,接收要存入date类型属性的

    2024年02月03日
    浏览(34)
  • git报错The project you were looking for could not be found 解决方式

    一、拉代码报错The project you were looking for could not be found 问题描述: 使用git从远程仓库克隆项目到本地的时候。 出现这个问题:The project you were looking for could not be found. 原因分析: 你的账号没有项目的权限,你可以在浏览器输入你的项目地址,如果可以进入,则说明有权限;

    2024年02月04日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包