Klasa java.sql.Timestamp
Klasa Timestamp
do obiektu java.util.Date
dodaje nanosekundy. Całe sekundy przechowywane są w obiekcie java.util.Date
. Nanosekundy przechowywane są oddzielnie.
Konstruktory
Czas podany jako long
jest czasem od 1 stycznia 1970 r. 00:00:00 GMT. Ujemne odliczają czas przed tym momentem.
Timestamp(long time)
package dt05.java_sql_timestamp; import java.sql.*; import java.util.*; public class Listing009 { public static void main(String[] args) { GregorianCalendar cal = new GregorianCalendar(1952, 5, 4); long l = cal.getTimeInMillis(); System.out.println("l: " + l); Timestamp stamp = new Timestamp(l); System.out.println("stamp: " + stamp); } }
l: -554691600000 stamp: 1952-06-04 00:00:00.0
Metody
Zwraca | Metoda | Opis | Listing |
---|---|---|---|
boolean |
after (Timestamp ts) |
Sprawdza czy ten Timestamp przypada po ts czy nie |
010 |
boolean |
before(Timestamp ts) |
Sprawdza czy ten Timestamp przypada przed ts czy nie |
|
int |
compareTo(java.util.Date) |
Porównuje obiekt Date w tym stemplu czasowym z podaną datą. Zwraca jeden jeśli ta data jest większa, 0 jeśli są równe, -1 jeśli ta data jest mniejsza |
011 |
int |
compareTo(Timestamp ts) |
Porównuje ten stempel czasowy z podanym. Zwraca jeden jeśli ten jest większy, 0 jeśli są równe, -1 jeśli ten jest mniejszy. | |
boolean |
equals(Object ts ) |
Sprawdza czy ten stempel czasowy równa się podanemu obiektowi. Jeśli ts nie jest obiektem klasy Timestamp metoda zawsze zwróci false – inne obiekty nie posiadają nanosekund do porównania |
012 |
boolean | equals(Timestamp ts) |
Sprawdza czy ten stempel czasowy równa się podanemu stemplowi czasowemu. | |
Timestamp |
Timestamp.from(Instant instant) |
Przekształca obiekt Instant w Timestamp . Gdy Instant obejmuje szerszy odstęp w czasie zostanie wyrzucony wyjątek. |
013 |
Instant |
toInstant() |
Przekształca ten stempel czasowy w obiekt Instant |
|
int |
getNanos() |
Zwraca nanoseksundy | 014 |
void |
setNanos(int n) |
Dodaje nanosekundy do czasu | |
long |
getTime() |
Podaje czas w milisekundach | 015 |
void |
setTime(long time) |
Ustawia czas na podany | |
int |
hashCode() |
Oblicza kod mieszający dla obiektu Oblicza kod mieszający dla tej daty. Z 64-bitowego longa pobierana jest prawa połowa bitów. Następnie wykonywana jest operacja alternatywy wykluczającej |
– |
LocalDateTime |
toLocalDateTime() |
Przekształca ten stempel czasowy w obiekt LocalDateTime (lokalna data i czas w lokalnej strefie czasowej) |
016 |
Timestamp |
Timestamp.valueOf(LocalDateTime dateTime) |
Podany obiekt LocalDateTime (lokalna data i czas w lokalnej strefie czasowej) przekształca w Timestamp |
|
String |
toString() |
Zwraca obiekt Timestamp jako String w postaci „yyyy-[m]m-[d]d hh:mm:ss.fffffffff” , f oznacza cyfry nanosekund. |
017 |
Timestamp |
Timestamp.valueOf(String s) |
Zamienia czas podany jako łańcuch znaków na obiekt Timestamp . Łańcuch znaków musi być podany w formie: „yyyy-[m]m-[d]d hh:mm:ss[.f...]” . Frakcja nanosekund może być pominięta. |
package dt05.java_sql_timestamp; import java.sql.*; import java.util.*; public class Listing010 { public static void main(String[] args) { GregorianCalendar cal1 = new GregorianCalendar(1952, 5, 4); long l1 = cal1.getTimeInMillis(); Timestamp stamp1 = new Timestamp(l1); System.out.println("stamp1: " + stamp1); GregorianCalendar cal2 = new GregorianCalendar(); long l2 = cal2.getTimeInMillis(); Timestamp stamp2 = new Timestamp(l2); System.out.println("stamp2: " + stamp2); boolean b1 = stamp1.after(stamp2); System.out.println("bl: " + b1); boolean b2 = stamp1.before(stamp2); System.out.println("b2: " + b2); } }
stamp1: 1952-06-04 00:00:00.0 stamp2: 2018-10-01 15:09:55.366 bl: false b2: true
package dt05.java_sql_timestamp; import java.sql.*; import java.util.*; public class Listing011 { public static void main(String[] args) { GregorianCalendar cal1 = new GregorianCalendar(1952, 5, 4); long t1 = cal1.getTimeInMillis(); java.util.Date date1 = new java.util.Date(t1); Timestamp stamp1 = new Timestamp(t1); System.out.println("stamp1: " + stamp1); //- GregorianCalendar cal2 = new GregorianCalendar(); long t2 = cal2.getTimeInMillis(); Timestamp stamp2 = new Timestamp(t2); System.out.println("stamp2: " + stamp2); //- int comp1 = stamp2.compareTo(date1); System.out.println("comp1: " + comp1); //- int comp2 = stamp2.compareTo(stamp1); System.out.println("comp2: " + comp2); } }
stamp1: 1952-06-04 00:00:00.0 stamp2: 2018-10-01 15:10:53.176 comp1: 1 comp2: 1
package dt05.java_sql_timestamp; import java.sql.*; import java.util.*; public class Listing012 { public static void main(String[] args) { GregorianCalendar cal1 = new GregorianCalendar(1952, 5, 4); long t1 = cal1.getTimeInMillis(); java.util.Date date1 = new java.util.Date(t1); Timestamp stamp1 = new Timestamp(t1); System.out.println("stamp1: " + stamp1); //- GregorianCalendar cal2 = new GregorianCalendar(); long t2 = cal2.getTimeInMillis(); Timestamp stamp2 = new Timestamp(t2); System.out.println("stamp2: " + stamp2); //- boolean comp1 = stamp2.equals(date1); System.out.println("comp1: " + comp1); //- boolean comp2 = stamp2.equals(stamp1); System.out.println("comp2: " + comp2); } }
stamp1: 1952-06-04 00:00:00.0 stamp2: 2018-10-01 15:11:47.001 comp1: false comp2: false
package dt05.java_sql_timestamp; import java.sql.*; import java.time.*; public class Listing013 { public static void main(String[] args) { Instant i1 = Instant.now(); System.out.println("il: " + i1); //- Timestamp stamp = Timestamp.from(i1); System.out.println("stamp: " + stamp); //- Instant i2 = stamp.toInstant(); System.out.println("i2: " + i2); } }
il: 2018-10-01T13:12:37.170815100Z stamp: 2018-10-01 15:12:37.1708151 i2: 2018-10-01T13:12:37.170815100Z
package dt05.java_sql_timestamp; import java.sql.*; import java.time.*; public class Listing014 { public static void main(String[] args) { Instant i1 = Instant.now(); System.out.println("i1: " + i1); //- Timestamp stamp = Timestamp.from(i1); System.out.println("stamp: " + stamp); // stamp.setNanos(123456789); System.out.println("stamp: " + stamp); // int nanos = stamp.getNanos(); System.out.println(" nanos: " + nanos); } }
i1: 2018-10-01T13:13:48.363944800Z stamp: 2018-10-01 15:13:48.3639448 stamp: 2018-10-01 15:13:48.123456789 nanos: 123456789
package dt05.java_sql_timestamp; import java.sql.*; import java.time.*; public class Listing015 { public static void main(String[] args) { Instant i1 = Instant.now(); System.out.println("il: " + i1); //- Timestamp stamp = Timestamp.from(i1); System.out.println("stamp: " + stamp); // stamp.setTime(1234567891011L); System.out.println("stamp: " + stamp); // long time = stamp.getTime(); System.out.println("time: " + time); // } }
il: 2018-10-01T13:15:16.108877900Z stamp: 2018-10-01 15:15:16.1088779 stamp: 2009-02-14 00:31:31.011 time: 1234567891011
package dt05.java_sql_timestamp; import java.sql.*; import java.time.*; public class Listing016 { public static void main(String[] args) { long l = System.currentTimeMillis(); System.out.println("l: " + l); // Timestamp now = new Timestamp(l); System.out.println("now: " + now); // LocalDateTime ldt = now.toLocalDateTime(); System.out.println("now: " + now); // Timestamp now2 = Timestamp.valueOf(ldt); System.out.println("now: " + now2); } }
now: 2018-10-01 15:18:53.991 now: 2018-10-01 15:18:53.991 now: 2018-10-01 15:18:53.991
package dt05.java_sql_timestamp; import java.sql.*; public class Listing017 { public static void main(String[] args) { long l = System.currentTimeMillis(); System.out.println("l: " + l); // Timestamp now = new Timestamp(l); String nows = now.toString(); System.out.println("nows: " + nows); // Timestamp now2 = Timestamp.valueOf(nows); System.out.println("now2: " + now2); } }
l: 1538399993726 nows: 2018-10-01 15:19:53.726 now2: 2018-10-01 15:19:53.726