java.time Java8-এর প্যাকেজ LocalDateTime নামের একটি ক্লাস প্রদান করে স্থানীয় তারিখ এবং সময়ের বর্তমান মান পেতে ব্যবহৃত হয়। তারিখ এবং সময়ের মানগুলি ছাড়াও এটি ব্যবহার করে আপনি অন্যান্য তারিখ এবং সময় ক্ষেত্রগুলিও পেতে পারেন, যেমন বছরের-দিন, সপ্তাহের দিন এবং বছরের সপ্তাহ৷
স্থানীয় সময় একটি কলামে সেট করা
একটি টেবিলের একটি কলামে স্থানীয় তারিখ এবং সময়ের মান সেট করতে -
- LocalDateTime অবজেক্টটি পান − আপনি LocalDateTime পেতে পারেন − হিসাবে স্থির পদ্ধতি now() invoking দ্বারা অবজেক্ট
//Getting the LocalDateTime object LocalDateTime localDateTime = LocalDateTime.now();
- স্থানীয় তারিখ পান এবং স্থানীয় সময় উপরোক্ত থেকে বস্তুগুলি প্রাপ্ত স্থানীয় তারিখের সময় যেমন -
LocalDate localDate = localDateTime.toLocalDate(); LocalTime localTime = localDateTime.toLocalTime()
- এখন, স্থানীয় তারিখ পাস করুন এবং স্থানীয় সময় valueOf() এর বস্তু java.sql.Date এর পদ্ধতি এবং java.sql.Time ক্লাস যথাক্রমে- হিসাবে
java.sql.Date date = java.sql.Date.valueOf(localDate); java.sql.Time time = java.sql.Time.valueOf(localTime);
উদাহরণ
চলুন ডিসপ্যাচ নামের একটি টেবিল তৈরি করি MySQL ডাটাবেসে নিম্নরূপ CREATE স্টেটমেন্ট ব্যবহার করে -
CREATE TABLE dispatches( ProductName VARCHAR(255), CustomerName VARCHAR(255), DispatchDate date, DeliveryTime time, Price INT, Location VARCHAR(255) );
এখন, আমরা প্রেরণে 5টি রেকর্ড সন্নিবেশ করব INSERT স্টেটমেন্ট-
ব্যবহার করে টেবিল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 প্রোগ্রাম অনুসরণ করে প্রেরণে একটি নতুন রেকর্ড সন্নিবেশ করায় প্রয়োজনীয় মান পাস করে টেবিল। এখানে, আমরা বর্তমান স্থানীয় তারিখ এবং সময়ের মানগুলি পাচ্ছি এবং টেবিলের তারিখ এবং সময় কলামের মান হিসাবে সেগুলি সন্নিবেশিত করছি৷
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 { //Registering the Driver DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/mydatabase"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //Getting the LocalDateTime object LocalDateTime localDateTime = LocalDateTime.now(); System.out.println(localDateTime.toString()); //Converting date and time values from local to SQL java.sql.Date date = java.sql.Date.valueOf(localDateTime.toLocalDate()); java.sql.Time time = java.sql.Time.valueOf(localDateTime.toLocalTime()); //Creating a Prepared Statement 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 ...."); //Retrieving values 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: Earphones Customer Name: Roja Date Of Dispatch: 2019-05-01 Delivery Time: 11:00:00 Location: Vishakhapatnam Product Name: Mouse Customer Name: Puja Date Of Dispatch: 2019-03-01 Delivery Time: 10:59:59 Location: Vijayawada Product Name: Mobile Customer Name: Vanaja Date Of Dispatch: 2019-03-01 Delivery Time: 10:10:52 Location: Chennai Product Name: Headset Customer Name: Jalaja Date Of Dispatch: 2019-04-06 Delivery Time: 11:08:59 Location: Goa Product Name: Watch Customer Name: Rajan Date Of Dispatch: 2019-05-14 Delivery Time: 15:48:42 Location: Chennai