/ / JDBC Dates Zastarané v jazyku Java (java.sql package) - java, jdbc

JDBC dátumy sú zastarané v jazyku Java (balík java.sql) - java, jdbc

Pracujem s JDBC a MySQL. Mám stĺpec s dátumom, ktorý potrebujem zahrnúť do sady výsledkov. Bohužiaľ, nemôžem nájsť triedu v jazyku Java, aby som získal dátum. Trieda SQL Date je zastaraná. Ako získavate objekty Date z množiny výsledkov?

odpovede:

19 pre odpoveď č. 1

Používaš java.sql.Date, Konštruktér a niektoré metódy sú zastarané. Táto trieda nie je zmätená týmto, napr. java.util.Date alebo java.util.Calendar? Pozri na Sense z dátumov Java.

Existujú tri typy dátumu a času JDBC:

Zmätok pravdepodobne vyplýva zo skutočnosti, že java.sql.Date rozširuje java.util.Date a tým zdedí jeho zastarané metódy.

Stačí použiť správny typ pre typ vášho stĺpca.


3 pre odpoveď č. 2

Nemyslím si, že trieda java.sql.Date sama o sebe je zastaraná, len jeden z jej konštruktérov. Mali by ste byť v bezpečí pokračovať v jej používaní.


2 pre odpoveď č. 3

Starý príspevok, ale napriek tomu:

Mal som problémy s granularitou java.util.Date a prešiel na java.util.Timestamp. Tiež som zažila obmedzenú granularitu s typom časovej pečiatky (až do sekúnd).

Stĺpce v databáze sú deklarované ako Dátum a na získanie dodatočnej časovej časti som ich získal ako Časovú pečiatku. Problém je, že skráti hodnotu na sekundy.

Skúmal som štandardnú definíciu Oracle pre časovú pečiatku, ktorá umožňuje 6 zlomkových číslic.

Myslím, že časť Date v definícii Oracle obmedzuje časovú značku v jazyku Java ...

Na zdravie, Gražina


1 pre odpoveď č. 4

Triedu java.sql.Date môžete bezpečne použiť na mapovanie typu MySQL DATE. Trieda java.sql.Date rozširuje triedu java.util.Date, takže môžete použiť tento objekt na vykonanie všetkých typov výpočtov dátumu.