मुझे अपनी परियोजना में स्प्रिंग बूट के साथ स्प्रिंग डेट रेस्ट का उपयोग किया गया है। इस प्रोजेक्ट में एक ऑब्जेक्ट है और मैंने अपने जेसन से प्राप्त होने वाले दिनांक फ़ील्ड को प्रारूपित करने के लिए एनोटेशन @ जेसनफ़ॉर्मैट का उपयोग किया है। फ़ील्ड दिनांक का प्रारूप "डीडी/एमएम/yyyy" है। जब मैं अपने जेसन में "08/07/1980" मान भेजता हूं तो जैक्सन मूल्य "07/07/1980" में परिवर्तित हो जाता है।जैक्सन @ जेसनफॉर्मैट सेट एक दिन से कम
समस्या @JsonFormat एक दिन कम
साथ तारीख तय है कि यह मेरा स्रोत कोड है
@Temporal(TemporalType.DATE)
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy", locale = "pt-BR", timezone = "UTC")
private Date birthDate;
धन्यवाद
मुझे लगता है कि आपका बैकएंड का अनुरोध करते समय आपका मतलब है। क्या क्लाइंट ब्राउज़र या कुछ प्रकार का आरईएसटी उपकरण है? एक ही समय क्षेत्र में ग्राहक और सर्वर दोनों हैं? – franDayz
मेरा पहला अनुमान यह है कि चूंकि आप यूटीसी का उपयोग कर रहे हैं और घंटे और सेकंड छोड़ रहे हैं, इसलिए ब्राजील और यूटीसी के बीच ऑफसेट लागू किया जा रहा है क्योंकि समय की जानकारी का नुकसान हुआ है। एक त्वरित प्रयास के रूप में आप लोकेल संपत्ति को एनोटेशन से छोड़ सकते हैं और इसके बजाय इस पैटर्न का उपयोग कर सकते हैं "yyyy-MM-dd'T'HH: mm: ss.SSSZ" जिसमें टाइमज़ोन जानकारी और मिलीसेकंड शामिल हैं, इसलिए इससे क्लाइंट का प्रतिनिधित्व कोई फर्क नहीं पड़ता – franDayz