java 解组 LocalDateTime

2024-02-24

这是我的适配器类:

public class LocalDateTimeAdapter extends XmlAdapter<String, LocalDateTime> {

    @Override
    public LocalDateTime unmarshal(String v) throws Exception {
        return new LocalDateTime(v);
    }

    @Override
    public String marshal(LocalDateTime v) throws Exception {
        return v.toString();
    }

}

这是一个我想存储日期的对象类:

    @XmlAccessorType(XmlAccessType.FIELD)
    public class Object {

    @XmlJavaTypeAdapter(LocalDateTimeAdapter.class)
    private LocalDateTime time;

    public LocalDateTime getTime() {
            return time;
    }

由于某种原因,我无法编译它。表明问题出在return new LocalDateTime(v);。这是我得到的错误:

Error:(9, 16) java: constructor LocalDateTime in class java.time.LocalDateTime cannot be applied to given types;
      required: java.time.LocalDate,java.time.LocalTime
      found: java.lang.String
      reason: actual and formal argument lists differ in length

和 xml 部分:

<time type="dateTime">2000-01-01T19:45:00Z</time>

我正在跟进this http://blog.bdoughan.com/2011/05/jaxb-and-joda-time-dates-and-times.html例子。


可能你正在使用LocalDateTime https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html从 Java 8 开始。此类没有任何字符串构造函数。

在您正在关注的示例中LocalDateTime http://www.joda.org/joda-time/apidocs/org/joda/time/class-use/LocalDateTime.html来自JodaTime http://www.joda.org/joda-time/.

因此,您可以通过以下方式做到这一点:

  • Import org.joda.time.LocalDateTime(您将需要 JodaTime 依赖项)而不是java.time.LocalDateTime;

  • 或改变unmarshal方法如下:

    @Override
    public LocalDateTime unmarshal(String v) throws Exception {
        return LocalDateTime.parse(v);
    }
    

您可能需要通知日期时间格式 https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html#parse-java.lang.CharSequence-java.time.format.DateTimeFormatter-,因为默认格式是2011-12-03T10:15:30,也许是这个:

@Override
public LocalDateTime unmarshal(String v) throws Exception {
    return LocalDateTime.parse(v, DateTimeFormatter.ISO_INSTANT);
}

另外,在java.time.LocalDateTime toString https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html#toString--将输出以下 ISO-8601 格式之一:

  • uuuu-MM-dd'T'HH:mm
  • uuuu-MM-dd'T'HH:mm:ss
  • uuuu-MM-dd'T'HH:mm:ss.SSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSS
  • uuuu-MM-dd'T'HH:mm:ss.SSSSSSSSS
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java 解组 LocalDateTime 的相关文章

随机推荐

  • C++ 中的私有成员与临时变量

    假设您有以下代码 int main int argc char argv Foo f while true f doSomething 以下两种 Foo 实现中哪一个是首选 解决方案一 class Foo private void doIt
  • LINQ FirstOrDefault 检查默认值

    如何检查是否返回了对象FirstOrDefaultLINQ功能其实是默认的 例如 Contact contact dbo contact Where m gt m contactName Stackoverflow FirstOrDefau
  • 如何在flutter中创建工具栏搜索视图

    我需要实施searchview在工具栏中我的应用程序用于过滤列表视图 在 aziza回答的帮助下 我用下面的列表过滤器编写了搜索视图的详细代码片段 这对其他人有帮助 import package flutter material dart
  • SQL SERVER MANAGEMENT STUDIO:突出显示变量

    SQL SERVER MANAGEMENT STUDIO 中有没有一种方法可以在我们单击变量名称时突出显示变量的所有用法 它可能不适用于所有情况 但我发现使用F2按钮 在我的机器上映射到 View EditLabel 它使我能够突出显示所有
  • range::sort 无法编译

    在 MyRect h 中 struct MyRect MyRect std initializer list
  • Fluentd 发送到 Splunk HEC:想要将源类型设置为命名空间

    是否可以以编程方式将源类型设置为生成日志的名称空间 我正在使用 fluidd 插件将数据发送到 Splunk http 事件收集器 在其他地方 建议使用 record kubernetes namespace name 将索引名称设置为命名
  • 函数的隐式声明在 C99 中无效

    我是 C 语言新手 我遇到了一个我真的不明白的问题 我试图从另一个函数获取一个数组 但是当我尝试提取信息时 它给了我以下警告 函数 getk vector calculation 的隐式声明在 C99 中无效 数组初始值设定项必须是初始值设
  • 使用访问权限填充多对多表

    我有两张桌子 persons and projects 位于多对多表中 因此通过第三个表链接在一起persons projects 在 ms access 中 我现在创建了一个表单 显示来自projects table 我想要的是有一个显示
  • 如何使用 openXML 深度克隆 .xlsx 文件中的行?

    我有 template xlsx 文件 必须通过在特定索引中添加一行的几个副本来修改该文件 当我尝试使用克隆方法进行此操作时 我添加了一行 但每行都互相修改 我需要创建 opemxml 行对象的深度克隆 但是当我尝试此操作时 出现 open
  • 具有多个选项的 jQuery 日期选择器

    我想得到datepicker显示我发送的日期名称 但它仍然使用默认值 有什么东西应该关闭吗 我应该使用单个选项语句设置值吗 我在 Firebug 中没有收到任何错误 这是我的代码 datepicker dateFormat dd mm yy
  • 在 C# 中旋转色调

    我正在寻找复制发现的 CSS3 色调旋转行为here http css3 bradshawenterprises com filters 原始图像 色调旋转 180 度的图像 我已经可以准确地将 RGB 值转换为 HSL 值 然后再转换回来
  • 为什么即使我设置了随机种子,我也无法在 Keras 中获得可重现的结果?

    我正在 Mac OSX 上使用 Keras 在虚拟数据上训练 MobileNet 架构 我都设置了nump random and tensorflow set random seed 但由于某些原因 我无法获得可重现的结果 每次重新运行代码
  • 您知道 NTSC 解码器 API 吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 API 可以用来解码模拟信号的数字样本 根据 http en wikipedia org
  • if fi [: 参数太多

    这个脚本有什么问题吗 if grep q
  • 如何更改LocationRequest的间隔

    我将应用程序设置为每 5 秒获取一次位置通知 mLocationRequest LocationRequest create mLocationRequest setPriority LocationRequest PRIORITY HIG
  • 如何跟踪点击时正确的标注附件视图的位置

    正如您在下面看到的 我有一个带有右键的注释视图 当用户点击右侧按钮时 我将呈现一个弹出窗口 问题是我不知道用户点击的位置 因此我没有 X 和 Y 来相应地显示弹出窗口 如何找出用户点击的位置 即 X 和 Y HotelAnnotationV
  • 如何快速检查一个对象是否是动态类类型?

    我正在实现一个名为的函数ofType它过滤掉给定类型的所有元素 这是我的代码 class Animal class Mammal Animal class Monkey Mammal class Pig Mammal class Human
  • 如何调试 Firefox 扩展,它似乎无声地崩溃

    我不知道如何调试我的简单扩展 脚本 内容脚本 加载 因为第一个 console log 调用显示在选项卡的控制台中 但随后什么也没有 没有任何错误 也没有第二次 console log 调用 我的问题不是关于解决我的代码问题 肯定有一个 如
  • Matplotlib/Pandas 中条形图的优化

    代码 df pd DataFrame 770 215 179 107 83 82 70 60 57 54 52 index A B C D E F G H I J K ax df plot kind bar stacked False al
  • java 解组 LocalDateTime

    这是我的适配器类 public class LocalDateTimeAdapter extends XmlAdapter