草庐IT

JodaTime

全部标签

java - JodaTime 相当于 DateUtils.truncate()

我从未使用过JodaTime之前,但回答这个问题,HowtogetordinalWeekdaysinaMonth.我试过了,想出了这个丑陋的代码来取消设置下面的所有字段:DateTimestartOfMonth=input.withDayOfMonth(1).withHourOfDay(0)//there.withMinuteOfHour(0)//hasgotto.withSecondOfMinute(0)//beashorterway.withMillisOfSecond(0);//todothisCommons/Lang在哪里等效使用DateUtils会是DatestartOfMo

java - 由于时区偏移转换,如何处理 jodatime 非法瞬间

我想将jodaDateTime设置为今天凌晨2点(请参阅下面的示例代码)。但我得到了这个异常(exception):Exceptioninthread"main"org.joda.time.IllegalFieldValueException:Value2forhourOfDayisnotsupported:Illegalinstantduetotimezoneoffsettransition:2011-03-27T02:52:05.239(Europe/Prague)atorg.joda.time.chrono.ZonedChronology$ZonedDateTimeField.s

java - Jodatime 的 DateTime 的默认日期时区为 UTC

我目前正在使用当前惯用语创建UTCDateTime对象DateTimenow=newDateTime(DateTimeZone.UTC);有什么方法可以默认,所以我可以使用默认构造函数创建基于UTC的DateTime对象,这样它就更隐含了?DateTimenow=newDateTime(); 最佳答案 如果您只想为joda时间设置默认时区,请使用DateTimeZone.setDefault.如果您想更改整个jvm使用的时区,请使用TimeZone.setDefault方法。请务必尽早设置它,因为它可以被jodatime缓存..引用

java - 覆盖 BeanPropertyRowMapper 以支持 JodaTime DateTime

MyDomain对象有几个Joda-TimeDateTime字段。当我使用SimpleJdbcTemplate读取数据库值时:Patientpatient=jdbc.queryForObject(sql,newBeanPropertyRowMapper(Patient.class),patientId);它只是失败了,令人惊讶的是,没有记录任何错误。我猜这是因为timestamp解析为DateTime不适用于Jdbc。如果可以继承和覆盖BeanPropertyRowMapper并指示将所有java.sql.Timestamp和java.sql.Date转换为DateTime,很好,可以

json - Spring @ResponseBody Jackson JsonSerializer 与 JodaTime

我有以下用于JodaTime处理的序列化程序:publicclassJodaDateTimeJsonSerializerextendsJsonSerializer{privatestaticfinalStringdateFormat=("MM/dd/yyyy");@Overridepublicvoidserialize(DateTimedate,JsonGeneratorgen,SerializerProviderprovider)throwsIOException,JsonProcessingException{StringformattedDate=DateTimeFormat.f

java - 使用 UTC 时区解析 ISO8601 日期字符串到日期

我正在尝试从/到JavaScript应用程序序列化/反序列化日期。服务器端,我用的是Java,上面安装了JodaTime。我发现了如何使用UTC时区序列化为ISO,但不知道如何进行反向操作。这是我的代码publicstaticStringgetIsoDate(Datedate){SimpleDateFormatdateToIsoDateString=newSimpleDateFormat(ISO_8601_DATE_FORMAT);TimeZonetz=TimeZone.getTimeZone("UTC");dateToIsoDateString.setTimeZone(tz);ret

java - 使用 UTC 时区解析 ISO8601 日期字符串到日期

我正在尝试从/到JavaScript应用程序序列化/反序列化日期。服务器端,我用的是Java,上面安装了JodaTime。我发现了如何使用UTC时区序列化为ISO,但不知道如何进行反向操作。这是我的代码publicstaticStringgetIsoDate(Datedate){SimpleDateFormatdateToIsoDateString=newSimpleDateFormat(ISO_8601_DATE_FORMAT);TimeZonetz=TimeZone.getTimeZone("UTC");dateToIsoDateString.setTimeZone(tz);ret

java - 了解 JodaTime DateTime.parse(string, formatter)

parse中格式化程序的样式DateTime类的方法必须匹配字符串的确切样式?例如,我从数据库(Oracle)中获取TimeStamp对象并将其转换为字符串。在数据库中,时间戳是这样存储的08-AUG-1212.00.00.000000000AM我将格式化程序设置为这种样式Stringpattern="dd-MMM-yy";我得到了这个异常java.lang.IllegalArgumentException:Invalidformat:"08-AUG-1212.00.00AM"ismalformedat"12.00.00AM"org.joda.time.format.DateTimeF

java - 从 java.util.date 转换为 JodaTime

我想将java.util.Date转换为JodaTime以便在日期之间进行减法。有没有一种简洁的方法可以将Date转换为JodaTime? 最佳答案 java.util.Datedate=...DateTimedateTime=newDateTime(date);确保date不是null,但是,否则它的行为就像newDateTime()-我真的不喜欢那样。 关于java-从java.util.date转换为JodaTime,我们在StackOverflow上找到一个类似的问题:

java - Java中两个日期之间的天数差异?

我需要找到两个日期之间的天数:一个来自报告,一个来自当前日期。我的片段:intage=calculateDifference(agingDate,today);这里calculateDifference是一个私有(private)方法,agingDate和today是Date对象,只是为了你的澄清。我关注了Java论坛上的两篇文章,Thread1/Thread2.它在独立程序中运行良好,尽管当我将其包含在我的逻辑中以从报告中读取时,我得到了一个不寻常的值差异。为什么会发生,我该如何解决?编辑:与实际天数相比,我得到的天数更多。publicstaticintcalculateDiffer