How to using Date, Time, TimeStamp for Java to connect Database

Hey guy, Today I will show you how to use Date, Time, TimeStamp properly

If you using only Date type

so that the data type in the database is similar to data type in java then we should use the class java.sql.Date

The java.sql.Date class represents only date in java. It inherits java.util.Date class.

The java.sql.Date instance is widely used in JDBC because it represents the date that can be stored in database.

Some constructors and methods of java.sql.Date class has been deprecated. Here, we are not giving list of any deprecated constructor and method.

No.

Method

Description

1

void setTime(long time)

changes the current sql date to given time.

2

Instant toInstant()

converts current sql date into Instant object.

3

LocalDate toLocalDate()

converts current sql date into LocalDate object.

4

String toString()

converts this sql date object to a string.

5

static Date valueOf(LocalDate date)

returns sql date object for the given LocalDate.

6

static Date valueOf(String date)

returns sql date object for the given String.

Example : get current date

public class SQLDateExample {  
    public static void main(String[] args) {  
        long millis=System.currentTimeMillis();  
        java.sql.Date date=new java.sql.Date(millis);  
        System.out.println(date);  
    }  
}  

Example : Set custom date

import java.sql.Date;  
public class StringToSQLDateExample {  
public static void main(String[] args) {  
    String str="2015-03-31";  
    Date date=Date.valueOf(str);//converting string into sql date  
    System.out.println(date);  
}  
}  

If you using Datetime

Then we should use the class java.sql.Timestamp

Timestamp provides formatting and parsing operations to support JDBC escape syntax. It also adds the ability to hold the SQL TIMESTAMP fractional seconds value.

Methods

Description

Returns Boolean value true if this Timestamp object comes later than given Timestamp object.

Returns Boolean value true if this Timestamp object comes earlier than given Timestamp object.

Compares this Timestamp object to the given Timestamp object or to the given date object

Returns a Boolean value true if this Timestamp object is equal specified object or to the given Timestamp object .

Obtains an instance of Timestamp from an Instant object

Fetches the Timestamp object's nanos value

getTime()

Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT

hashCode()

Returns a hash code value for this object

setNanos()

Sets a nanos value for the specified integer value

setTime()

Sets this class's object to indicate a point in time (milliseconds) after January 1, 1970 00:00:00 GMT

toInstant()

Coverts the Timespan object to an Instant which represents the same point on the time-line as this Timestamp

toLocalDateTime()

Converts this Timespan object to a LocalDateTime which represents the same date-time value as this Timestamp

toString()

Converts the Timespan object in JDBC timestamp escape format

valueOf()

Converts the string object to Timestamp value or obtains an instance of Timestamp from a LocalDateTime object.

Example 1

import java.sql.Timestamp;  
import java.time.Instant;  
public class JavaTimestampFromExample_1 {  
    public static void main(String[] args) {  
        //from() method Obtains an instance of Timestamp from an Instant object  
       Timestamp instant= Timestamp.from(Instant.now());  
        System.out.println("1. from() method will return "+instant);  
        // valueOf() method returns a Timestamp value corresponding to the given string  
        String str="2018-09-01 09:01:15";  
        Timestamp timestamp= Timestamp.valueOf(str);  
        System.out.println("2. value of Timestamp : "+timestamp);  
        //getNanos() method gets the Timestamp obejct's nanos value  
        Integer val=timestamp.getNanos();  
        System.out.println("3. Fractional seconds component : "+val);  
        Timestamp ts2 = Timestamp.valueOf("2018-09-01 09:01:16");  
        //before() returns Boolean value true if this ts1 comes earlier than given ts2  
        System.out.println("4. Boolean value returned : "+timestamp.before(ts2));  
    }  
}  

Example 2

import java.sql.Timestamp;  
import java.time.Instant;  
public class JavaTimespanExample2 {  
    public static void main(String[] args) {  
        Timestamp ts1 = Timestamp.valueOf("2018-09-01 09:01:15");  
        System.out.println("Timestamp : "+ts1);  
        // getTime() method returns the number of milliseconds  
        Long val=ts1.getTime();  
        System.out.println("1. Milliseconds : "+val);  
        //hashCode() method returns the hash code for this object.  
        Integer val1=ts1.hashCode();  
        System.out.println("2. Hash code : "+val1);  
        // setNanos() method sets nanos value for the specified integer value.  
        ts1.setNanos(54647);  
        System.out.println("3. Timestamp after setting nanos : " + ts1);  
        // toInstant() method returns an Instant which represents the same point on the time-line as this Timestamp  
        Instant instant = ts1.toInstant();  
        System.out.println("4. Instant Timespan : " + instant);  
    }  
}  

Last updated

Was this helpful?