cuốn sách gpt4 ai đã làm

XMLGregorianCalendar trong Oracle cho đến nay

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 10:13:07 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi đọc ngày XMLGregorianCalendar từ một tệp:




Tôi cần lưu trữ chúng trong cơ sở dữ liệu oracle cùng một lúc. Tôi có lĩnh vực này:


Tôi có các trường trong thực thể của mình:

@Convert(converter = XMLGregorianCalendarConverter.class)
dấu thời gian XMLGregorianCalendar riêng tư;

và công cụ chuyển đổi của tôi:

@Converter
@Slf4j
lớp công khai XMLGregorianCalendarConverter triển khai AttributionConverter {

@Ghi đè
Ngày công khai ConvertToDatabaseColumn(XMLGregorianCalendar xcal) {
trở vềDate(xcal);
}

@Ghi đè
XML công khaiGregorianCalendar ConvertToEntityAttribution (Ngày ngày) {
thử {
quay lạiXMLGregorianCalendarWithUTCTimezone(date);
} bắt (DatatypeConfigurationException e) {
e.printStackTrace();
}

return null;
}

DatatypeFactory riêng tư getDatatypeFactory() ném DatatypeConfigurationException {
trả về DatatypeFactory.newInstance();
}

Ngày riêng tư đếnDate(lịch XMLGregorianCalendar) {
nếu (lịch == null) {
return null;
}

return lịch.toGregorianCalendar().getTime();
}

XML riêng tưGregorianCalendar toXMLGregorianCalendarWithUTCTimezone(Date date) ném DatatypeConfigurationException {

nếu (ngày == null) {
return null;
}

GregorianCalendar gregorianCalendar = new GregorianCalendar();
gregorianCalendar.setTime(ngày);

XMLGregorianCalendar xmlGregorianCalendar = getDatatypeFactory().newXMLGregorianCalendar(gregorianCalendar);
xmlGregorianCalendar.setMillisecond(DatatypeConstants.FIELD_UNDEFINED);
xmlGregorianCalendar.setTimezone(DatatypeConstants.EQUAL);
trả về xmlGregorianCalendar;
}

Khi tôi lưu chúng thay vì lấy giờ đầu tiên, thứ hai và thứ ba, tôi nhận được:

Tôi đã đọc rất nhiều câu trả lời cho các câu hỏi tương tự ở đây nhưng tôi vẫn không thể trả lời chính xác vì tôi nhận được kết quả kỳ lạ như giờ thứ nhất, thứ ba, thứ ba, v.v. Tôi nên thay đổi gì trong bộ chuyển đổi để nó hoạt động?

câu trả lời hay nhất

Được rồi, tôi đã giải quyết được vấn đề bằng cách thêm

TimeZone.setDefault(TimeZone.getTimeZone("UTC"));

trong tôi từđến ngàyPhương thức trước khi trả về java.util.Date.

Về java - XMLGregorianCalendar trong Oracle Cho đến nay, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/52075177/

hai mươi bốn 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress