Xstream jodatime 本地日期显示

2024-01-15

我正在使用 xstrem 将 jodatime 本地日期序列化为 xml。 然而,当输出生成的 xml 时,LocalDate 的格式并不易于阅读。 见下文:

<date>
    <iLocalMillis>1316563200000</iLocalMillis>
    <iChronology class="org.joda.time.chrono.ISOChronology" reference="../../tradeDate/iChronology"/>

有什么想法可以让 xstream 以不会让我烦恼的格式显示日期吗?


这是我已经成功使用的。我相信我使用了第一篇文章中提到的链接中的信息。

import java.lang.reflect.Constructor;

import org.joda.time.DateTime;

import com.thoughtworks.xstream.converters.Converter;
import com.thoughtworks.xstream.converters.MarshallingContext;
import com.thoughtworks.xstream.converters.UnmarshallingContext;
import com.thoughtworks.xstream.io.HierarchicalStreamReader;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;


public final class JodaTimeConverter implements Converter {

    @Override
    @SuppressWarnings("unchecked")
    public boolean canConvert(final Class type) {
            return (type != null) && DateTime.class.getPackage().equals(type.getPackage());
    }

    @Override
    public void marshal(final Object source, final HierarchicalStreamWriter writer,
            final MarshallingContext context) {
            writer.setValue(source.toString());
    }

    @Override
    @SuppressWarnings("unchecked")
    public Object unmarshal(final HierarchicalStreamReader reader,
            final UnmarshallingContext context) {
            try {
                    final Class requiredType = context.getRequiredType();
                    final Constructor constructor = requiredType.getConstructor(Object.class);
                    return constructor.newInstance(reader.getValue());
            } catch (final Exception e) {
                throw new RuntimeException(String.format(
                 "Exception while deserializing a Joda Time object: %s", context.getRequiredType().getSimpleName()), e);
            }
    }

}

你可以这样注册:

XStream xstream = new XStream(new StaxDriver());
xstream.registerConverter(new JodaTimeConverter());
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Xstream jodatime 本地日期显示 的相关文章

  • 清理码头 - 删除“不必要”的东西

    我习惯用Jetty http jetty codehaus org jetty 作为我的网络容器 我对我做了什么安装步骤得到原始的焦油球并且清理一些目录和文件从中 我在这里想提出的是 您通常从 Jetty 中删除什么以在生产 登台环境中使用
  • 使用 GWT CellTableBuilder 构建树表

    Is it possible to build a tree table like this http www sencha com examples ExamplePlace basictreegrid with the new Cell
  • 如何使用 SimpleDateFormat 解析多种格式的日期

    我正在尝试解析文档中的一些日期 用户似乎以类似但不完全相同的格式输入了这些日期 以下是格式 9 09 9 2009 09 2009 9 1 2009 9 1 2009 尝试解析所有这些内容的最佳方法是什么 这些似乎是最常见的 但我想让我困扰
  • 如何在 JSP 中导入类?

    我是一个完全的JSP初学者 我正在尝试使用java util List在 JSP 页面中 我需要做什么才能使用除以下类之外的类java lang 使用以下导入语句进行导入java util List 顺便说一句 要导入多个类 请使用以下格式
  • 使用 RecyclerView 适配器在运行时更改布局屏幕

    我有两个布局文件 如下所示 如果列表中存在数据 则我显示此布局 当列表为空时 我会显示此布局 现在我想在运行时更改布局 当用户从列表中删除最后一项时 我想将布局更改为第二张图片中显示的 空购物车布局 In getItemCount Recy
  • 记录骆驼路线

    我的项目中有几个 Camel 上下文 如果可能的话 我想以逆向工程方式记录路线 因为我们希望保持与上下文相关的文档最新 最好的方法是什么 我们倾向于预先实际设计路线 并使用来自EIP book http www eaipatterns co
  • 内存一致性 - Java 中的happens-before关系[重复]

    这个问题在这里已经有答案了 在阅读有关内存一致性错误的 Java 文档时 我发现与创建 发生 之前 关系的两个操作相关的点 当语句调用时Thread start 每个具有 与该语句发生之前的关系也有一个 与 new 执行的每个语句之间发生的
  • 如何在android中设置多个闹钟,在这种情况下最后一个闹钟会覆盖以前的闹钟

    我正在开发一个Android应用程序 用户可以在其中设置提醒时间 但我在以下代码中遇到一个问题 即最后一个警报会覆盖之前的所有警报 MainActivity java public void setreminders DatabaseHan
  • 如何将 android.net.Uri 转换为 java.net.URL? [复制]

    这个问题在这里已经有答案了 有没有办法从Uri to URL 我正在使用的库需要这个 它only接受一个URL但我需要在我的设备上使用图像 如果该方案的Uri is http or https new URL uri toString 应该
  • Java 服务器-客户端 readLine() 方法

    我有一个客户端类和一个服务器类 如果客户端向服务器发送消息 服务器会将响应发送回客户端 然后客户端将打印它收到的所有消息 例如 如果客户端向服务器发送 A 则服务器将向客户端发送响应 1111 所以我在客户端类中使用 readLine 从服
  • Java 8 中函数式接口的使用

    这是来自的后续问题Java 8 中的 双冒号 运算符 https stackoverflow com questions 20001427 double colon operator in java 8其中 Java 允许您使用以下方式引用
  • 隐式超级构造函数 Person() 未定义。必须显式调用另一个构造函数?

    我正在开发一个项目 但收到错误 隐式超级构造函数 Person 未定义 必须显式调用另一个构造函数 我不太明白它 这是我的人物课程 public class Person public Person String name double D
  • 列表应该如何转换为具体的实现?

    假设我正在使用一个我不知道源代码的库 它有一个返回列表的方法 如下所示 public List
  • RSA OAEP、Golang 加密、Java 解密 -BadPaddingException:解密错误

    我正在尝试解密使用 RSA OAEP 在 Golang 中加密的字符串 但出现 BadPaddingException 解密错误 很难弄清楚我错过了什么 这是Golang加密方法 func encryptString rootPEM io
  • Java 数组的最大维数

    出于好奇 在 Java 中数组可以有多少维 爪哇language不限制维数 但是JavaVM规范将维度数限制为 255 例如 以下代码将无法编译 class Main public static void main String args
  • 计算日期之间的天数差异

    在我的代码中 日期之间的差异是错误的 因为它应该是 38 天而不是 8 天 我该如何修复 package random04diferencadata import java text ParseException import java t
  • 解析输入,除了 System.in.read() 之外不使用任何东西

    我很难找到具体的细节System in read 有效 也许有人可以帮助我 似乎扫描仪会更好 但我不允许使用它 我被分配了一个任务 我应该以 Boolean Operator Boolean 的形式读取控制台用户输入 例如T F 或 T T
  • 挂钩 Eclipse 构建过程吗?

    我希望在 Eclipse 中按下构建按钮时能够运行一个简单的 Java 程序 目前 当我单击 构建 时 它会运行一些 JRebel 日志记录代码 我有一个程序可以解析 JRebel 日志文件并将统计信息存储在数据库中 是否可以编写一个插件或
  • JSON 到 hashmap (杰克逊)

    我想将 JSON 转换为 HashMapJackson http jackson codehaus org 这是我的 JSON String json Opleidingen name Bijz trajecten zorg en welz
  • 在android中跟踪FTP上传数据?

    我有一个运行 Android 的 FTP 系统 但我希望能够在上传时跟踪字节 这样我就可以在上传过程中更新进度条 安卓可以实现这个功能吗 现在 我正在使用org apache common net ftp我正在使用的代码如下 另外 我在 A

随机推荐

  • 如何创建通用工厂?

    我正在开发一个 Webmethod 集合的客户端 Silverlight 接口 我试图避免为每个网络方法编写任何自定义代码 所以我创建了一个ServiceCall
  • HttpContext.Current.Response.AddHeader() 未设置 Content-Type 标头

    我正在使用第三方软件从 html 文档渲染 PDF 我创建了一个小型测试项目并使用OnClick事件的
  • Lerna 指定运行顺序

    在我的 monorepo 中 我有 3 个包package1 package2 package3 每个包都包含一个名为的 npm 脚本build 但是 这些包并未链接在一起 IE 没有require 在任何链接到同级包的包中 从根文件夹中
  • 旋转和裁剪 UIImage

    想象一下我有一个 UIImage 我需要旋转然后在全局坐标系 不是 UIImage 坐标系 中裁剪它 所以结果图像将被裁剪and旋转 我怎样才能做到这一点 CGImageCreateWithImageInRect 将仅在图像相对坐标中裁剪图
  • 调整 ListView 列以适应 WinForms

    我面临列表视图列的调整大小问题 如果你锚 对接listview转普通winform比listview锚点或对接效果好 我的意思是 当 winform 最大化时 listview 将调整大小并适合 winform 但您在其上设计的列不会随 l
  • 复制对象数组,然后修改原始对象而不影响副本

    所以我一直在为这个看似微不足道的问题而绞尽脑汁 我不一定知道要搜索什么 我已经四处寻找解决方案 我需要制作二维数组的副本 该数组由对象 我创建的一个称为 Cell 的类 组成 但是一旦我制作了副本 我就会将该副本存储到哈希映射中 以供稍后参
  • WebSphere 响应缓冲

    我正在向WebSphere 的response getOutputStream 编写一个大型响应 数百Mb 看起来 Web Sphere 总是将整个输出流数据存储在一些内部内存缓冲区中 然后再将其提供给客户端 因此 我的服务器处理 生成数据
  • PHP print_r 仅显示数组而不是纯文本

    我再次寻求帮助 我找到了这个停用词脚本 我基本上从字符串中删除了所有常见单词
  • 有没有办法从 Google Contacts 联系人 ID 获取 Google People API 资源 ID?

    我们将用户的 contactId 存储在数据库中 并在用户从我们的应用程序请求时使用它来获取 编辑 删除联系人 现在 Google Contacts API 即将停用 我们需要使用资源 ID 调用 Google People API 来执行
  • OpenGL ES - 在片段着色器中旋转纹理而不失真

    我正在使用 Android 的 GPUImage 库对位图应用一些效果 本质上 GPUImage接受位图并使用OpenGL ES 将1 x 1立方体渲染到位图大小的帧缓冲区中 用户可以编写自定义片段着色器来控制输出 我正在尝试编写一个片段着
  • 如何在 mongodb 中按周对文档进行分组

    id ObjectId 568b650543712795bf864a45 companyId 55e2d7cfdc8f74d14f5c900f timeStamp ISODate 2014 12 03T18 30 00 000Z id Ob
  • NLog 无法与 MSTest 一起使用,配置应该放在哪里?

    我们最近将测试从 NUnit 迁移到 MSTest 我正在努力让之前通过的测试运行 据我所知 MSTest 无法检测到 NLog 配置 我的 App config 中有 Nlog 配置 这不会导致 NUnit 出现问题 有人有什么想法吗 改
  • Gettext自动评论生成

    我正在使用 gettext 为 php 项目执行 i18n 操作 我想使用自动评论功能 http www gnu org software gettext manual gettext html PO Files在翻译用 id 替换的长短语
  • int* x[n][m] 和 int (*x) [n][m] 有什么区别?

    照我看来int x n m 宣称x是一个指向整数的指针的二维数组 因此分配内存应该像x i j new int正如预期的那样 它工作得很好 现在 如果我将声明更改为 int x n m x i j new int不再有效并导致编译错误 x
  • iOS SpriteKit SKAction 完成调用不起作用/创建奇怪的结果

    我试图让 SKNode 根据命令移动到屏幕上 我设置了以下 SKAction 链 以便 1 节点向上移动并移出屏幕 然后 2 节点向下移动到起始位置 然后 3 开始四处移动 我使用以下代码来尝试实现这一点 SKAction moveUp S
  • Malloc 分配方案

    是的 我正在学习计算机系统课程 我对实现 malloc 的各种分配方案有一些疑问 对于显式列表 如果我使用类似 LIFO 的堆栈实现 malloc 那么拥有指向先前释放的内存的指针的确切目的是什么 比如为什么需要双向链表 单链表不是也能工作
  • 如何使用 jasmine 自定义记者制作失败规格列表并发布到 Slack?

    我正在尝试使用自定义 jasmine 报告器并获取 specDone 函数中所有失败规格的列表 specDone function result if result status failed failedExpectations push
  • 如何在 ggplot 中为地图中的多个图层自定义图例?

    我正在尝试修复我的标题 但在创建它时遇到问题 我想要类 填充 形状限制 颜色 点 颜色 和网格 填充 NA 的标题 我把它们全部放进去aes 但我没有得到预期的结果 有谁能够帮助我 谢谢 library geobr library sf l
  • 旋转 y 轴标签

    我正在尝试旋转 Y 轴的标题 使其处于水平位置 我不希望刻度标签只是 Y 轴标题的水平方向 我必须使用子图 因为我要同时制作多个图 这是下面的脚本 我在其中尝试旋转 Y 轴标题 import matplotlib pyplot as plt
  • Xstream jodatime 本地日期显示

    我正在使用 xstrem 将 jodatime 本地日期序列化为 xml 然而 当输出生成的 xml 时 LocalDate 的格式并不易于阅读 见下文