TL; ড
ইন ইউটিসি :
Instant.now().minus( 1 , ChronoUnit.HOURS )
বা, জোনেড:
Instant.now()
.atZone( ZoneId.of ( "America/Montreal" ) )
.minusHours( 1 )
জাভা.টাইম ব্যবহার
জাভা 8 এবং তার পরে নতুন জাভা.টাইম ফ্রেমওয়ার্ক অন্তর্নির্মিত রয়েছে।
Instant
আপনি যদি কেবল ইউটিসি (জিএমটি) এর বিষয়ে চিন্তা করেন তবে Instant
ক্লাসটি ব্যবহার করুন ।
Instant instant = Instant.now ();
Instant instantHourEarlier = instant.minus ( 1 , ChronoUnit.HOURS );
কনসোল করতে ডাম্প।
System.out.println ( "instant: " + instant + " | instantHourEarlier: " + instantHourEarlier );
তাত্ক্ষণিক: 2015-10-29T00: 37: 48.921Z | তাত্ক্ষণিক ঘন্টা প্রস্তুতকারক: 2015-10-28T23: 37: 48.921Z
এই তাত্ক্ষণিকর মধ্যে কীভাবে গতকের তারিখে ফিরে এলো তা নোট করুন।
ZonedDateTime
আপনি যদি কোনও সময় অঞ্চল সম্পর্কে যত্নশীল হন তবে ZonedDateTime
ক্লাসটি ব্যবহার করুন । আপনি একটি তাত্ক্ষণিক দিয়ে শুরু করতে পারেন এবং একটি সময় অঞ্চল, একটি ZoneId
বিষয় বরাদ্দ করুন । এই শ্রেণিটি ডায়ালাইট সেভিং টাইম (ডিএসটি) এর মতো অসঙ্গতিগুলির জন্য প্রয়োজনীয় সমন্বয়গুলি পরিচালনা করে ।
Instant instant = Instant.now ();
ZoneId zoneId = ZoneId.of ( "America/Montreal" );
ZonedDateTime zdt = ZonedDateTime.ofInstant ( instant , zoneId );
ZonedDateTime zdtHourEarlier = zdt.minus ( 1 , ChronoUnit.HOURS );
কনসোল করতে ডাম্প।
System.out.println ( "instant: " + instant + "\nzdt: " + zdt + "\nzdtHourEarlier: " + zdtHourEarlier );
তাত্ক্ষণিক: 2015-10-29T00: 50: 30.778Z
zdt: 2015-10-28T20: 50: 30.778-04: 00 [আমেরিকা / মন্ট্রিল]
zdtHourEaryer: 2015-10-28T19: 50: 30.778-04: 00 [আমেরিকা / মন্ট্রিল]
রূপান্তর
পুরানো java.util. তারিখ /.ক্যালেন্ডার ক্লাসগুলি এখন তৈরি হয়েছে। এগুলি এড়িয়ে চলুন। তারা কুখ্যাতভাবে ঝামেলা এবং বিভ্রান্তিকর।
আপনার যখন অবশ্যই পুরানো কোডগুলি অপরিবর্তনীয় জাভা.টাইম টাইপের জন্য আপডেট করা হয়নি সেগুলি সহ অপারেটিংয়ের জন্য ব্যবহার করতে হবে, রূপান্তর পদ্ধতিতে কল করুন। উদাহরণস্বরূপ কোডটি একটি তাত্ক্ষণিক বা জোনডেটটাইম থেকে জাভা.ইটিল.ডেটে যাচ্ছে।
java.util.Date date = java.util.Date.from( instant );
... অথবা ...
java.util.Date date = java.util.Date.from( zdt.toInstant() );
জাভা.টাইম সম্পর্কে
Java.time ফ্রেমওয়ার্ক জাভা 8 এবং পরে পাতাটা করা হয়। এই শ্রেণীর বিরক্তিজনক পুরাতন স্থানচ্যুত উত্তরাধিকার যেমন তারিখ-সময় শ্রেণীর java.util.Date
, Calendar
, &SimpleDateFormat
।
Joda-টাইম প্রকল্প, এখন রক্ষণাবেক্ষণ মোড , এর মাইগ্রেশন উপদেশ java.time ক্লাস।
আরও জানতে, ওরাকল টিউটোরিয়ালটি দেখুন । এবং অনেকগুলি উদাহরণ এবং ব্যাখ্যার জন্য স্ট্যাক ওভারফ্লো অনুসন্ধান করুন। স্পেসিফিকেশনটি জেএসআর 310 ।
আপনি আপনার ডাটাবেসের সাথে জাভা.টাইম অবজেক্টগুলি সরাসরি বিনিময় করতে পারেন । জেডিবিসি ৪.২ বা তারপরের সাথে অনুগত একটি জেডিবিসি ড্রাইভার ব্যবহার করুন । স্ট্রিংগুলির দরকার নেই, ক্লাসের প্রয়োজন নেই ।java.sql.*
জাভা.টাইম ক্লাস কোথায় পাবেন?
ThreeTen-অতিরিক্ত প্রকল্প অতিরিক্ত শ্রেণীর সাথে java.time প্রসারিত করে। এই প্রকল্পটি জাভা.টাইমে সম্ভাব্য ভবিষ্যতের সংযোজনগুলির একটি প্রমাণযোগ্য ক্ষেত্র। আপনি এখানে কিছু দরকারী শ্রেণীর যেমন খুঁজে পেতে পারেন Interval
, YearWeek
, YearQuarter
, এবং আরো ।
mktime
জাভা কোন সমতুল্য আছে? এটি থেকে 60 মিনিট বিয়োগ?