최대 절전 모드에서 Oracle Date를 사용하는 경우 날짜/시간에 대한 Java 유형
Oracle Date 열이 있습니다.처음에는 Java/Hibernate 클래스에서 사용했습니다.java.sql.Date
이것은 효과가 있었지만 우리가 저장할 때 데이터베이스에 시간 정보가 저장되어 있지 않은 것 같아 자바 데이터 유형을 타임스탬프로 변경했습니다.이제 다음 오류가 발생합니다.
스프링 골조콩 공장콩 창조예외:이름 'org.springframework.dao.an 표기법으로 빈을 만드는 동안 오류가 발생했습니다.클래스 경로 리소스 [margin-service-domain-config.xml]에 정의된 PersistenceExceptionTranslationPostProcessor#0':빈을 초기화하지 못했습니다. 중첩 예외는 org.springframework입니다.콩 공장콩 창작 예외:클래스 경로 리소스 [m-service-domain-config.xml]에 정의된 이름 'sessionFactory'로 빈을 생성하는 중 오류가 발생했습니다.init 메서드를 호출하지 못했습니다. 중첩된 예외는 org.hibernate입니다.동면예외:잘못된 열 유형: CREATE_TS, 예상: 타임스탬프
Oracle 매핑 방법에 대한 모든 아이디어Date
시간 부분을 유지하는 동안?
업데이트: Oracle을 사용하면 작동할 수 있습니다.Timestamp
데이터 유형이지만 이상적으로 그런 수준의 정밀도는 원하지 않습니다.기본적인 Oracle 솔루션을 원합니다.Date
.
저는 항상 java.util을 사용합니다.Oracle 날짜로 날짜를 지정하면 날짜와 시간이 올바르게 처리됩니다.
직접적인 답변은 아니지만 Oracle TIMESTAMP 유형을 사용합니다.
TIMESTAMP(fractional_seconds_precision) 날짜의 년, 월, 일 값과 시간의 시간, 분, 초 값.
fractional_seconds_precision
선택적으로 의 분수 부분에 있는 자릿수를 지정합니다.SECOND
datetime 필드이며 0 ~ 9 범위의 숫자일 수 있습니다.기본값은 6입니다.예를 들어 다음과 같이 지정합니다.TIMESTAMP
다음과 같이 리터럴로 표시됩니다.TIMESTAMP'1997-01-31 09:26:50.124'
원하는 대로fractional_second_precision
.
먼저, java.sql을 사용해야 한다는 것이 맞습니다.java.sql과 같은 타임스탬프 클래스입니다.날짜 클래스는 특정 시간을 명시적으로 나타내지 않습니다(오히려 자정 GMT를 나타내려고 합니다).
오류입니다. 추측 이상의 작업을 수행할 수 있는 충분한 정보를 제공하지 않았습니다. 실제로 원인을 확인하려면 최대 절전 모드 구성과 클래스를 모두 살펴봐야 합니다.그러나 Java 클래스에서 필드 클래스만 변경한 경우에는 당연히 최대 절전 모드 매핑도 업데이트해야 합니다.만약 당신이 후자를 하지 않았다면, 이것은 당신의 불일치로 이어질 가능성이 높습니다.명시적으로 지정해 보십시오.type="timestamp"
해당 매핑에 대해.
을 집편: 을사는경우해속당주성으로 했습니까?@Temporal(TemporalType.TIMESTAMP)
만약 당신이 그러지 않았다면, 당신은 그럴 필요가 있을 것입니다 (그리고 만약 그랬다면, 당신은 그렇게 말했어야 했습니다 :-).
혹시 이런 문제가 있나요?최신 JDBC 드라이버가 있는지 확인하십시오. 파일 이름은 ojdbc5.jar여야 합니다.
변경한 후 데이터베이스를 다시 작성했습니까?
Hibernate가 원래 java.sql을 사용하여 테이블을 만든 경우.컬럼 날짜는 자바 코드 변경만으로 변경될 수 있는 방법이 없습니다.
@Type(type = "type.joda.time.time.time.dll을 사용해야 합니다.겨울잠을 자다엔티티 클래스에 정의된 열에 대해 "PersistentDateTime")
언급URL : https://stackoverflow.com/questions/2188768/java-type-for-date-time-when-using-oracle-date-with-hibernate
'programing' 카테고리의 다른 글
PLS-00231:함수는 SQL에서 사용할 수 없습니다. (0) | 2023.07.24 |
---|---|
PowerShell에서 어레이의 어레이에 어레이 추가 (0) | 2023.07.24 |
Require는 빈 개체를 반환합니다. (0) | 2023.07.24 |
기본값의 스프링 @값 이스케이프 콜론(:) (0) | 2023.07.24 |
MySQL의 TIMESTAMP 사용 대 직접 타임스탬프 저장 (0) | 2023.07.24 |