草庐IT

java - 带有 java.time.LocalDate 和 DATE() 构造的 Hibernate 4

我正在尝试在我的应用程序中将LocalDate和LocalDateTime与Java8结合使用。我正在使用Hibernate4.3.5和Spring。我跟着这个有趣的教程here一切正常,但我在使用DATE()构造时遇到了问题。当我尝试这样做时:SELECT*FROMTABLEWHEREDATE(data)=DATE(:data)如果我手动进行的查询(复制和过去的查询Hibernate打印)工作正常,我也总是一个空列表。我认为问题在于Hibernate在内部进行的转换;它尝试将LocalDate转换为java.util.Date。我这样说是因为如果我以这种方式更改查询:SELECT*F

java - 替换 java.util.Date(year,month,day) 的公认方法是什么

我正在尝试做一些非常简单的事情,但开始意识到Java中的日期有点雷区。我想要的只是通过三个整数组(一年、一个月和一个日期)创建一些Date对象,对它们进行一些简单的测试(沿着日期B之前的日期A并且在1990年1月1日之后),将它们转换为java.sql.Date对象并通过JDBC将它们传递给数据库。一切都非常简单,使用java.util.Date(intyear,intmonth,intday)构造函数可以正常工作。当然,该构造函数已被折旧,我想避免在我正在编写的新代码中使用折旧调用。然而,解决这个简单问题的所有其他选项似乎都非常复杂。如果不使用折旧的构造函数,真的没有简单的方法可以做

java - 将字符串转换为 java.util.Date

我以这种格式将日期存储在SQLite数据库中:d-MMM-yyyy,HH:mm:ssaaa当我使用该格式检索日期时,一切正常除了小时。小时总是00。这是我的输出:Stringdate--->29-Apr-2010,13:00:14PMAfterconvrtingDate--->1272479414000--ThuApr2900:00:14GMT+05:302010代码如下:DatelScheduledDate=CalendarObj.getTime();DateFormatformatter=newSimpleDateFormat("d-MMM-yyyy,HH:mm:ssaaa");S

java.text.ParseException : Unparseable date "yyyy-MM-dd' T'HH:mm:ss. SSSZ"- SimpleDateFormat

如果能帮我找到此异常的错误,我将不胜感激:java.text.ParseException:Unparseabledate:"2007-09-25T15:40:51.0000000Z"以下代码:SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ");Datedate=sdf.parse(timeValue);longmills=date.getTime();this.point.time=String.valueOf(mills);Datedate=sdf.parse(timeValue);会引发异常。

java - SQL DATE 与 java.sql.Date 中的时区

我对SQLDATE数据类型的行为与java.sql.Date的行为有点混淆。以下面的语句为例:selectcast(?asdate)--inmostdatabasesselectcast(?asdate)fromdual--inOracle让我们用Java准备和执行语句PreparedStatementstmt=connection.prepareStatement(sql);stmt.setDate(1,newjava.sql.Date(0));//GMT1970-01-0100:00:00ResultSetrs=stmt.executeQuery();rs.next();//Ili

java - 如何使用 Mockito 在 java 中模拟 new Date()

我有一个使用当前时间进行一些计算的函数。我想用mockito来模拟它。我想测试的类的一个例子:publicclassClassToTest{publiclonggetDoubleTime(){returnnewDate().getTime()*2;}}我想要类似的东西:@TestpublicvoidtestDoubleTime(){mockDateSomeHow(Date.class).when(getTime()).return(30);assertEquals(60,newClassToTest().getDoubleTime());}可以模拟吗?我不想更改“已测试”代码以便进行测

java - 如何在 List<Object> 中找到 Max Date?

考虑一个类UserpublicclassUser{intuserId;Stringname;Datedate;}现在我有一个List大小为20,如何在不使用手动迭代器的情况下在列表中找到最大日期? 最佳答案 由于您要求使用lambda,因此您可以在Java8中使用以下语法:DatemaxDate=list.stream().map(u->u.date).max(Date::compareTo).get();或者,如果您有日期的setter/getter:DatemaxDate=list.stream().map(User::getD

java : Cannot format given Object as a Date

我有这种格式的日期(2012-11-17T00:00:00.000-05:00)。我需要将日期转换成这种格式mm/yyyy。我尝试过这种方式,但我得到了这个异常。Exceptioninthread"main"java.lang.IllegalArgumentException:CannotformatgivenObjectasaDateatjava.text.DateFormat.format(UnknownSource)atjava.text.Format.format(UnknownSource)atDateParser.main(DateParser.java:14)请看我下面的

java - 如何从 java.sql.Timestamp 转换为 java.util.Date?

即这段代码startDate=newDate(timestampValue.getTime));给我:2012-16-0205:16:17什么时候System.out.println(timestampValue);返回:2012-01-0205:16:17.0 最佳答案 类java.sql.TimeStamp扩展自java.util.Date。您可以直接将TimeStamp对象分配给Date引用:TimeStamptimeStamp=//whatevervalueyouhave;DatestartDate=timestampVal

java.text.ParseException : Unparseable date

我在尝试以下代码时遇到解析异常:Stringdate="SatJun0112:53:10IST2013";SimpleDateFormatsdf=newSimpleDateFormat("MMMd,yyyyHH:mm:ss");Datecurrentdate;currentdate=sdf.parse(date);System.out.println(currentdate);异常(exception):Exceptioninthread"main"java.text.ParseException:Unparseabledate:"SatJun0112:53:10IST2013"atc