Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java में LocalDateTime क्लास का उपयोग करके टेबल में लोकल डेट/टाइम कैसे सेट करें?

Java 8 के java.time पैकेज में LocalDateTime नामक एक क्लास है जिसका उपयोग लोकल डेट और टाइम का वर्तमान मान प्राप्त करने के लिए किया जाता है। इसका उपयोग करके, डेट और टाइम वैल्यूज़ के अलावा आप अन्य डेट और टाइम फील्ड्स जैसे डे-ऑफ-ईयर, डे-ऑफ-वीक, और वीक-ऑफ-ईयर भी प्राप्त कर सकते हैं।

कॉलम में लोकल टाइम सेट करना

टेबल में एक कॉलम में लोकल डेट और टाइम वैल्यू सेट करने के लिए:

  • LocalDateTime ऑब्जेक्ट प्राप्त करें - आप LocalDateTime ऑब्जेक्ट को now() स्टेटिक मेथड को इनवोक करके प्राप्त कर सकते हैं:
// LocalDateTime ऑब्जेक्ट प्राप्त करना 
LocalDateTime localDateTime = LocalDateTime.now();
  • उपरोक्त प्राप्त LocalDateTime से LocalDate और LocalTime ऑब्जेक्ट्स प्राप्त करें:
LocalDate localDate = localDateTime.toLocalDate(); 
LocalTime localTime = localDateTime.toLocalTime()
  • अब, LocalDate और LocalTime ऑब्जेक्ट्स को क्रमशः java.sql.Date और java.sql.Time क्लासेज के valueOf() मेथड में पास करें:
java.sql.Date date = java.sql.Date.valueOf(localDate); 
java.sql.Time time = java.sql.Time.valueOf(localTime);

उदाहरण

आइए MySQL डेटाबेस में dispatches नाम से एक टेबल बनाएं:

CREATE TABLE dispatches( 
    ProductName VARCHAR(255), 
    CustomerName VARCHAR(255), 
    DispatchDate date, 
    DeliveryTime time, 
    Price INT, 
    Location VARCHAR(255) 
);

अब, INSERT स्टेटमेंट्स का उपयोग करके dispatches टेबल में 5 रिकॉर्ड डालें:

insert into dispatches values('Key-Board', 'Raja', DATE('2019-09-01'), TIME('11:00:00'), 7000, 'Hyderabad'); 
insert into dispatches values('Earphones', 'Roja', DATE('2019-05-01'), TIME('11:00:00'), 2000, 'Vishakhapatnam'); 
insert into dispatches values('Mouse', 'Puja', DATE('2019-03-01'), TIME('10:59:59'), 3000, 'Vijayawada'); 
insert into dispatches values('Mobile', 'Vanaja', DATE('2019-03-01'), TIME('10:10:52'), 9000, 'Chennai'); 
insert into dispatches values('Headset', 'Jalaja', DATE('2019-04-06'), TIME('11:08:59'), 6000, 'Goa');

निम्न JDBC प्रोग्राम आवश्यक मान पास करके dispatches टेबल में एक नया रिकॉर्ड डालता है। यहां, हम वर्तमान लोकल डेट और टाइम वैल्यूज़ प्राप्त कर रहे हैं और उन्हें टेबल के Date और Time कॉलम के मान के रूप में डाल रहे हैं।

import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.PreparedStatement; 
import java.sql.ResultSet; 
import java.sql.SQLException; 
import java.sql.Statement; 
import java.time.LocalDateTime; 

public class settingLocatDate { 
    public static void main(String args[]) throws SQLException { 
        // ड्राइवर रजिस्टर करना 
        DriverManager.registerDriver(new com.mysql.jdbc.Driver()); 
        // कनेक्शन प्राप्त करना 
        String mysqlUrl = "jdbc:mysql://localhost/mydatabase"; 
        Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); 
        System.out.println("Connection established......"); 
        // LocalDateTime ऑब्जेक्ट प्राप्त करना 
        LocalDateTime localDateTime = LocalDateTime.now(); 
        System.out.println(localDateTime.toString()); 
        // लोकल से SQL में डेट और टाइम वैल्यूज़ कन्वर्ट करना 
        java.sql.Date date = java.sql.Date.valueOf(localDateTime.toLocalDate()); 
        java.sql.Time time = java.sql.Time.valueOf(localDateTime.toLocalTime()); 
        // प्रिपेयर्ड स्टेटमेंट बनाना 
        String query = "INSERT INTO Dispatches VALUES (?, ?, ?, ?, ?, ?)"; 
        PreparedStatement pstmt = con.prepareStatement(query); 
        pstmt.setString(1, "Watch"); 
        pstmt.setString(2, "Rajan"); 
        pstmt.setDate(3, date); 
        pstmt.setObject(4, time); 
        pstmt.setInt(5, 4000); 
        pstmt.setString(6, "Chennai"); 
        pstmt.execute(); 
        System.out.println("Rows inserted ...."); 
        // मान पुनर्प्राप्त करना 
        Statement stmt = con.createStatement(); 
        ResultSet rs = stmt.executeQuery("select * from dispatches"); 
        while(rs.next()) { 
            System.out.println("Product Name: "+rs.getString("ProductName")); 
            System.out.println("Customer Name: "+rs.getString("CustomerName")); 
            System.out.println("Date Of Dispatch: "+rs.getDate("DispatchDate")); 
            System.out.println("Delivery Time: "+rs.getTime("DeliveryTime")); 
            System.out.println("Location: "+rs.getString("Location")); 
            System.out.println(); 
        } 
    } 
}

आउटपुट

Connection established...... 
2019-05-14T15:48:42.457 
Rows inserted .... 
Product Name: Key-Board 
Customer Name: Raja 
Date Of Dispatch: 2019-09-01 
Delivery Time: 11:00:00 
Location: Hyderabad 
... 
Product Name: Watch 
Customer Name: Rajan 
Date Of Dispatch: 2019-05-14 
Delivery Time: 15:48:42 
Location: Chennai

नया रिकॉर्ड वर्तमान लोकल डेट और टाइम के साथ डाला गया है।

  1. Android में OffsetDateTime API का उपयोग करके स्थानीय तारीख कैसे प्राप्त करें? Android में OffsetDateTime API का उपयोग करके स्थानीय तारीख कैसे प्राप्त करें?

    OffsetDateTime से LocalDate निकालना यह उदाहरण दर्शाता है कि Android में OffsetDateTime API क्लास का उपयोग करके ऑफसेटडेटटाइम स्थानीय तारीख कैसे प्राप्त करें। चरण 1 - नया प्रोजेक्ट बनाएं Android Studio में एक नया प्रोजेक्ट बनाएं: File → New Project पर जाएं और सभी आवश्यक विवरण भरकर नया प्रोजेक्ट बनाएं

  1. Android में LocalTime API क्लास का उपयोग करके लोकल टाइम कैसे प्राप्त करें? Android में LocalTime API क्लास का उपयोग करके लोकल टाइम कैसे प्राप्त करें?

    Android में LocalTime API का उपयोग करके लोकल टाइम प्राप्त करना यह उदाहरण दर्शाता है कि Android में LocalTime API क्लास का उपयोग करके लोकल टाइम कैसे प्राप्त करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में एक नया प्रोजेक्ट बनाएं: File → New Project पर जाएं और नया प्रोजेक्ट बनाने के लिए सभी आवश्यक

  1. Android में LocalDateTime API क्लास का उपयोग करके लोकल टाइम और डेट कैसे प्राप्त करें? Android में LocalDateTime API क्लास का उपयोग करके लोकल टाइम और डेट कैसे प्राप्त करें?

    Android में LocalDateTime API का उपयोग करके लोकल टाइम और डेट प्राप्त करना यह उदाहरण दर्शाता है कि Android में LocalDateTime API क्लास का उपयोग करके लोकल टाइम और डेट कैसे प्राप्त करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में एक नया प्रोजेक्ट बनाएं: File → New Project पर जाएं और नया प्रोजेक्ट ब