java.sql.Date
ve LocalDate
(Java8) arasında dönüştürmenin doğru yolu nedir?LocalDate ve sql.Date arasında dönüştürme
cevap
java.sql.Date
'un Java 8 sürümü (ve üstü), toLocalDate
ve valueOf(LocalDate)
dahil LocalDate
desteği için oluşturulmuştur.
sqlDate.toLocalDate();
Zaman dilimleri:
LocalDate
tipi depolar hiçbir zaman
java.sql.Date.valueOf(localDate);
kullanabilirsiniz Ve java.sql.Date
LocalDate
dönüştüğünde için java.sql.Date
için LocalDate
den dönüştürmek için bölge bilgisi, 0 ikenyapar. Bu nedenle, yukarıdaki dönüşümleri kullanırken, sonuçlar sistemin varsayılan saat dilimine (yorumlarda belirtildiği gibi) bağlıdır. Eğer varsayılan saat diliminde güvenmek istemiyorsanız
, aşağıdaki dönüşüm kullanabilirsiniz:
Date now = new Date();
LocalDate current = now.toInstant()
.atZone(ZoneId.systemDefault()) // Specify the correct timezone
.toLocalDate();
Not: Bu, tarihi yorumlamak için sistem varsayılan saat dilimini kullanır; bu, istediğiniz gibi olabilir veya olmayabilir. Genellikle saat dilimini açıkça belirtmek tercih edilir! – marc82ch
@ marc82ch A ['LocalDate'] (https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) açıkça bir saat dilimine sahip değildir. Birini nasıl belirleyeceğinize ve bunun nasıl etkileyeceğine dair bazı ayrıntılar ekleyebilir misiniz? – beldaz
@beldaz Yanılmış olabilirim, aslında internals bilmiyorum, ama bir java.sql.Date epoch (UTC) beri uzun bir zaman damgası tarafından temsil olduğunu düşünüyorum. Bu yüzden, DB DATE alanından okurken, onu uzun süre göstermek için yorumlanmalıdır (sürücü tarafından). Java.sql.Date'in java.util.Date'den miras aldığını unutmayın. Yani temel olarak Java 8 teriminde bir Anında ve LocalDate'e dönüştürmek bir zaman dilimi gerektirir. Ancak, JDBC sürücüsü ve kodunuzun aynı varsayılan saat dilimini kullandığı sürece, önemli değil. – marc82ch
- 1. LocalDate ve XMLGregorianCalendar arasında dönüştürme
- 2. char * ile NSString arasında dönüştürme
- 3. LOCALDATE ve DateTimeFormatter Japon yerel ayar
- 4. Groovy'nin TimeCategory with LocalDate ve LocalDateTime
- 5. `Period` ve `LocalDate`` den `Duration` 'deyin.
- 6. C# kodu derlenmez. boş ve arasında hiçbir örtük dönüştürme
- 7. SQL Server: UTC ve Yerel Saat Arasında Tam Olarak Dönüştürme
- 8. Dize ve bayt [] arasında bütünlük kaybetmeden dönüştürme nasıl yapılır
- 9. ByteString ve Storable Vector arasında dönüştürme nasıl yapılır?
- 10. Soket ve TcpClient nesneleri arasında dönüştürme yapmak mümkün mü?
- 11. Haskell: ByteStrings ve farklı metin kodlamaları arasında dönüştürme
- 12. int [ish] ve asm.js olarak çift [ish] arasında dönüştürme asm.js
- 13. Julia'da dize ile DateTime arasında dönüştürme
- 14. Dizeleri altıgen biçimiyle ikili biçim arasında dönüştürme
- 15. Dize LocalDate (Java 8) ayrıştırılamıyor
- 16. Dize ile Veriyi 3.0 arasında dönüştürme
- 17. LOCALDATE Hafta Sayısı (Java 8) biçimi ile tam bir LOCALDATE Hafta Sayısı almaya çalışıyorum
- 18. karşılaştırmak nasıl LOCALDATE örneklerini Java 8
- 19. Java'da Joda LocalDate to String dönüştürmek nasıl?
- 20. Kriteri API'sında iki LocalDate nesnesi nasıl karşılaştırılır?
- 21. Joda Localdate Joda DateTime nasıl dönüştürülecek?
- 22. SQLAlchemy: Sütun değerini iç ve veritabanı biçimi arasında ileri ve geri dönüştürme
- 23. Joda Time - Takvim nesnesini LocalDate'e dönüştürme
- 24. dönüştürme SQL satır ve
- 25. Pandalar ofset ve dönüştürme
- 26. Kodlama ile Notepad ++ arasında dönüştürme arasındaki fark nedir?
- 27. Managed C++ ile C++/CLI arasında dönüştürme araçları var mı?
- 28. UTC saat dilimini postgresql ile EST (yerel saat) arasında dönüştürme
- 29. Sayısal türler arasında aritmetik sağlamak için örtülü dönüştürme nasıl ayarlanır?
- 30. Latin1 kodlu DataByteString ve Data.Text Arasındaki Dönüştürme
soruya kendisinde ifadeler de özellikle java.sql dönüşüm arayan/kişiler için iyidir Diğer soru benzer bir cevabı olsa bile java.time.LocalDate için geçerlidir. –