tl; др
LocalDate.of( 2011 , 11 , 14 ) // November 14th, 2011
Подробности
Ответ от Мэтта Болла правильный.Но теперь есть намного улучшенный способ.
java.time
Мучительные старые классы даты и времени, такие как Calendar
, java.util.Date
и java.sql.Date
, теперь унаследованы, замененыклассами java.time.
В отличие от устаревших классов, классы java.time имеют вменяемую нумерацию , например, месяцы с номерами 1-12 для января по декабрь и 1-7 для понедельника по воскресенье.
Класс LocalDate
представляет значение только для даты без времени суток и без часового пояса.
LocalDate ld = LocalDate.of( 2011 , 11 , 14 ) ;
Или используйте удобное перечисление Month
.
LocalDate ld = LocalDate.of( 2011 , Month.NOVEMBER , 14 ) ;
Используя драйвер JDBC, поддерживающий JDBC 4.2 и более поздние версии, вы можете передавать свои объекты java.time непосредственно в базу данных..
myPreparedStatement.setObject( … , ld ) ;
При получении используйте getObject
.
LocalDate ld = myResultSet.getObject( … , LocalDate.class ) ;
О java.time
java.time фреймворк встроен в Java 8 и выше.Эти классы заменяют проблемные старые устаревшие классы даты и времени, такие как java.util.Date
, Calendar
, & SimpleDateFormat
.
Проект Joda-Time , теперь в режиме обслуживания , рекомендует перейти на классы java.time .
Чтобы узнать больше, см. Oracle Tutorial .И поиск переполнения стека для многих примеров и объяснений.Спецификация: JSR 310 .
Где получить классы java.time?
Проект ThreeTen-Extra расширяет Java.время с дополнительными занятиями.Этот проект является полигоном для возможных будущих дополнений к java.time.Здесь вы можете найти несколько полезных классов, таких как Interval
, YearWeek
, YearQuarter
и more .