मैं डेटाबेस से एक तिथि और एक समय वापस खींच रहा हूँ। वे अलग-अलग क्षेत्रों में संग्रहित होते हैं, लेकिन मैं उन्हें java.util.Date ऑब्जेक्ट में जोड़ना चाहता हूं जो दिनांक/समय को उचित रूप से दर्शाता है।मैं java.sqil.Date ऑब्जेक्ट को java.sql.Time ऑब्जेक्ट के साथ कैसे जोड़ूं?
मेरा मूल दृष्टिकोण यहां है, लेकिन यह त्रुटिपूर्ण है। मैं हमेशा एक तिथि/समय के साथ समाप्त होता हूं जो कि 6 घंटे से कम होना चाहिए। मुझे लगता है कि ऐसा इसलिए है क्योंकि समय में टाइमज़ोन ऑफसेट के साथ-साथ तिथि भी है, और मुझे वास्तव में टाइमज़ोन ऑफसेट रखने के लिए उनमें से केवल एक की आवश्यकता है।
ऐसा करने के तरीके पर कोई सुझाव है कि यह मुझे सही दिनांक/समय देगा?
import java.sql.Time;
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang.time.DateUtils;
public static Date combineDateTime(Date date, Time time)
{
if (date == null)
return null;
Date newDate = DateUtils.truncate(date, Calendar.DATE);
if (time != null)
{
Date t = new Date(time.getTime());
newDate = new Date(newDate.getTime() + t.getTime());
}
return newDate;
}
Calendar.getInstance() कैलेंडर का एक नया उदाहरण हर एक फोन बनाता है। कैलेंडर बहुत भारी वजन है, और थ्रेड सुरक्षित नहीं है। हालांकि यह तकनीकी रूप से ऐसा करने का एक सही तरीका है, इसके बारे में जाने के बेहतर तरीके हैं। –
यदि कोई बेहतर तरीका है तो क्या आप इसे पोस्ट कर सकते हैं? – ScArcher2
ठीक है, यदि आप बहुत सारे कैलेंडर बनाने के बारे में चिंतित हैं, तो आप दिनांक के लिए एक और उस समय के लिए एक बना सकते हैं, और बस उन्हें dCal.setTime (दिनांक) और tCal.setTime (समय) के साथ रीसेट कर सकते हैं; –