`
haohao-xuexi02
  • 浏览: 215455 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

转javax.xml.datatype.XMLGregorianCalendar

    博客分类:
  • java
 
阅读更多

原文:http://xiyangzk.iteye.com/blog/813936

XMLGregorianCalendar是GregorianCalendar(格里历,阳历)在XML领域中的对应类,算是Webservice、JAXB这些应用经常出现的关于日期时间的经典入门问题。

 

使用javax.xml.datatype.DatatypeFactory、java.text.SimpleDateFormat、java.util.GregorianCalendar可以轻松解决XMLGregorianCalendar相关问题。

 

 

Java代码 复制代码 收藏代码
  1. //GregorianCalendar-〉XMLGregorianCalendar    
  2.       GregorianCalendar nowGregorianCalendar =new GregorianCalendar();   
  3.       XMLGregorianCalendar xmlDatetime= DatatypeFactory.newInstance().newXMLGregorianCalendar(nowGregorianCalendar);   
  4.       //XMLGregorianCalendar ->GregorianCalendar   
  5.       nowGregorianCalendar = xmlDatetime.toGregorianCalendar();   
  6.       //GregorianCalendar->String   
  7.       SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   
  8.       String dateTimeString=simpleDateFormat.format(nowGregorianCalendar.getTime());   
  9.       //GregorianCalendar->Date   
  10.       Date date = nowGregorianCalendar.getTime();   
  11.       //Date->GregorianCalendar   
  12.       nowGregorianCalendar.setTime(date);   
  13.   
  14.       //String->Date   
  15.       date=simpleDateFormat.parse("1981-07-22 00:00:00");   
  16.       //Date->String   
  17.       String dateString=simpleDateFormat.format(date.getTime());   
  18.          
  19.       //Sring->XMLGregorianCalendar   
  20.       nowGregorianCalendar.setTime(simpleDateFormat.parse("1981-07-22 00:00:00"));   
  21.       xmlDatetime= DatatypeFactory.newInstance().newXMLGregorianCalendar(nowGregorianCalendar);   
  22.       //XMLGregorianCalendar->Sring   
  23.       simpleDateFormat.format(xmlDatetime.toGregorianCalendar().getTime());  
  //GregorianCalendar-〉XMLGregorianCalendar 
        GregorianCalendar nowGregorianCalendar =new GregorianCalendar();
        XMLGregorianCalendar xmlDatetime= DatatypeFactory.newInstance().newXMLGregorianCalendar(nowGregorianCalendar);
        //XMLGregorianCalendar ->GregorianCalendar
        nowGregorianCalendar = xmlDatetime.toGregorianCalendar();
        //GregorianCalendar->String
        SimpleDateFormat simpleDateFormat =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String dateTimeString=simpleDateFormat.format(nowGregorianCalendar.getTime());
        //GregorianCalendar->Date
        Date date = nowGregorianCalendar.getTime();
        //Date->GregorianCalendar
        nowGregorianCalendar.setTime(date);

        //String->Date
        date=simpleDateFormat.parse("1981-07-22 00:00:00");
        //Date->String
        String dateString=simpleDateFormat.format(date.getTime());
        
        //Sring->XMLGregorianCalendar
        nowGregorianCalendar.setTime(simpleDateFormat.parse("1981-07-22 00:00:00"));
        xmlDatetime= DatatypeFactory.newInstance().newXMLGregorianCalendar(nowGregorianCalendar);
        //XMLGregorianCalendar->Sring
        simpleDateFormat.format(xmlDatetime.toGregorianCalendar().getTime());

     

 

附:java.util.GregorianCalendar与java.util.Date的关系如同日历与日历中的某一页。java.util.GregorianCalendar与.Net类型DateTime更相像。

分享到:
评论
4 楼 haohao-xuexi02 2011-07-22  
xiang37 写道
haohao-xuexi02 写道
xiang37 写道
哈,不错;学习了
日期统一的问题,是一个在接口中常见的问题

其实webservice解析的xml 。


恩 了解;在我遇到的日期问题中,大多是系统之间传值,格式不统一需要转换的问题。而java在日期处理的问题上,是一个诟病,哈哈 
浅谈一下

请多讲一些。
3 楼 xiang37 2011-07-22  
haohao-xuexi02 写道
xiang37 写道
哈,不错;学习了
日期统一的问题,是一个在接口中常见的问题

其实webservice解析的xml 。


恩 了解;在我遇到的日期问题中,大多是系统之间传值,格式不统一需要转换的问题。而java在日期处理的问题上,是一个诟病,哈哈 
浅谈一下
2 楼 haohao-xuexi02 2011-07-22  
xiang37 写道
哈,不错;学习了
日期统一的问题,是一个在接口中常见的问题

其实webservice解析的xml 。
1 楼 xiang37 2011-07-22  
哈,不错;学习了
日期统一的问题,是一个在接口中常见的问题

相关推荐

    javax.xml.rpc相关jar包

    描述中提到的“解决javax.xml jar包缺失的问题,引进javax.xml.rpc-api-1.1.1.jar”,意味着在开发或运行某个Java项目时,可能会遇到由于缺少`javax.xml.rpc`相关的jar包导致的编译或运行错误。为了解决这个问题,...

    javax.xml.bind.jar

    【标题】"javax.xml.bind.jar" 是一个Java开发中常用的工具包,主要包含了Java对象到XML数据绑定的API,这是Java标准版(Java SE)的一部分,用于帮助开发者将Java类和XML文档之间的转换自动化,从而简化了XML处理。...

    javax.xml.rpc

    "javax.xml.rpc"是Java平台中的一个关键组件,主要用于实现基于XML的远程过程调用(XML-RPC)服务。这个框架允许Java应用程序通过HTTP协议来调用远程服务器上的方法,从而实现分布式计算。在Java EE环境中,它常与...

    javax.xml.bind.jar和三个sqljdbc4x.jar

    javax.xml.bind.jar和三个sqljdbc4x.jar;实测可用。用于sqlserver连接和出现Java 9 及以上 eclipse 链接 SQL数据库 抛出 java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter 异常

    javax.xml.bind.jar 包

    在集成阿里云移动推送时,部署到服务器的时候遇到了java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter 错误,产生原因是缺少javax.xml.bind.DatatypeConverter

    javax.xml.ws.Service 报错需要的包

    在Java开发中,`javax.xml.ws.Service` 是一个核心组件,属于Java API for XML Web Services (JAX-WS)的一部分,用于创建客户端和服务端的Web服务代理。报错通常表明缺少必要的依赖包,这可能会影响到程序的正常运行...

    javax.xml.stream_1.0.1.v201004272200.jar

    javax.xml.stream_1.0.1.v201004272200.jar

    Unable to load class ‘javax.xml.bind.JAXBException‘(csdn).pdf

    在Android Studio中遇到"Unable to load class ‘javax.xml.bind.JAXBException‘"的错误,通常是由于Java运行时环境(JRE)或开发工具包(JDK)与项目的兼容性问题导致的。`javax.xml.bind.JAXBException`是Java的...

    javax.xml.ws.Service

    【javax.xml.ws.Service】是Java平台上用于Web服务客户端的一个核心接口,它位于Java Web Services (JWS) API中,主要用于创建和使用Web服务。这个接口是JAX-WS(Java API for XML Web Services)规范的一部分,它...

    javax.xml-1.3.4

    《深入解析javax.xml-1.3.4》 在Java编程领域,`javax.xml`是核心的XML处理包,主要用于处理XML文档的解析、转换、验证等任务。`javax.xml-1.3.4`是这个包的一个特定版本,包含了处理XML所需的一系列类和接口。本文...

    javax.ejb.jar下载

    Files contained in javax.ejb.jar: META-INF/MANIFEST.MF javax.ejb.AccessLocalException.class javax.ejb.AccessTimeout.class javax.ejb.ActivationConfigProperty...javax.xml.rpc.handler.MessageContext.class

    com.springsource.javax.xml.rpc-1.1.0.jar

    jar包,官方版本,自测可用

    javax.xml.soap-api-1.4.0.jar

    安卓sdk找不到的api,因此需要引入额外的jar包1

    javax.ejb.rar

    META-INF / maven / org.glassfish.main.ejb / javax.ejb / pom.xml javax.ejb.AccessLocalException.class javax.ejb.AccessTimeout.class javax.ejb.ActivationConfigProperty.class javax.ejb.AfterBegin.class ...

    com.springsource.javax.xml.stream-1.0.1.jar

    jar包,官方版本,自测可用

    javax.xml.bind jdk1.5缺包

    标题 "javax.xml.bind jdk1.5缺包" 指出的问题是在使用Java 1.5版本时,遇到了与`javax.xml.bind`相关的类找不到的异常。具体来说,异常信息 "java.lang.ClassNotFoundException: ...

    javax.servlet jar包---解决找不到javax.servlet.*等问题

    当你遇到“找不到javax.servlet.*”这样的错误时,通常是因为你的项目缺少了这个库,所以需要引入`javax.servlet.jar`来解决问题。 1. **Java Servlet简介** Java Servlet是Java平台上的一个标准,用于扩展服务器...

Global site tag (gtag.js) - Google Analytics