इसे संभालने का एक बेहतर तरीका आपके डेटाबेस की तरफ है। तालिका बनाते समय TIMESTAMP
. के लिए डिफ़ॉल्ट मान निर्दिष्ट करें स्तंभ के रूप में
CREATE TABLE posts (
id INTEGER AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(50) NOT NULL,
creation_date TIMESTAMP DEFAULT NOW()
);
उदाहरण एक CREATE TABLE
दिखाता है MySQL के लिए लेकिन अवधारणा समान है। अपनी पंक्ति सम्मिलित करते समय, बस creation_date
. कॉलम के लिए कोई मान निर्दिष्ट न करें और डेटाबेस इसे आपके लिए स्वतः भर देगा।
उसी तालिका को देखते हुए, यदि आप जावा से दिनांक सम्मिलित करना चाहते हैं, तो आपका कोड इस तरह दिखना चाहिए
// Get current time
Timestamp now = new Timestamp(new Date().getTime());
try {
// Prepare INSERT through Connection
PreparedStatement stmt = conn.prepareStatement(
"INSERT INTO posts (title, creation_date) VALUES (?, ?)");
// Bind values
stmt.setString(1, title);
stmt.setTimestamp(2, now);
// Insert
stmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
ध्यान दें, कि आपको एक DB Connection
भी खोलना होगा (conn
ऑब्जेक्ट ऊपर) और जब आप इसके साथ काम कर लें तो इसे बंद कर दें। अगर आप JDBC API में नए हैं, तो JDBC बेसिक्स पर एक नज़र डालें।
पहले।