전체 글 (44) 썸네일형 리스트형 컬럼크기 CLOB으로 변경했는데도 에러나는 이유(ORA-01461) 게시글 컬럼의 크기를 VARCHAR2에서 CLOB으로 변경했는데도 계속 Insert에서 에러가 났다. 인서트문을 보니 게시글 본문 컬럼에 nvl이 걸려있길래 혹시나해서 지웠더니 오류가 안난다!찾아보니 nvl이 4000바이트까지라는 얘기도 있고 string으로 변환한다는 얘기도 있어 공식문서를 찾아보았다. 오라클 공식 문서 일부 발췌If expr1 is character data, then Oracle Database converts expr2 to the data type of expr1 before comparing them and returns VARCHAR2 in the character set of expr1.전달값1이 문자 데이터이면 오라클 데이터베이스에서 전달값2를 전달값1의 데이터 타입으로 .. 테스트용 AuditorAware 별도로 만들기 이전 게시글(https://codestreet.tistory.com/93)에서 JpaConfig 클래스 안에 AuditorAware 빈을 생성 -> 랜덤 숫자를 리턴하게 하여 테스트 한 후 다시 운영 코드로 변경하였다.문제는 이후 테스트를 할 때 마다 테스트용 코드로 바꿨다가 다시 운영용 코드로 바꿔야 해서 번거로웠다는 점이다.AuditorAware에서는 리퀘스트 헤더에서 엑세스 토큰을 추출해 내고 그 안의 사용자ID값을 뽑아내어 CreatedBy 또는 LastModifiedBy의 값으로 지정한다. 단위 테스트 시에는 리퀘스트 헤더에 접근이 불가능하기 때문에 아래와 같이 HttpServletRequest를 정의할 수 없다고 뜬다.***************************APPLICATION FAI.. Auditing 사용해서 데이터 관리하기 JPA의 Auditing 기능을 사용하면 DB에 데이터 입력, 수정 시의 시간, 입력자 정보를 자동으로 관리할 수 있다.보통 테이블을 생성하면 데이터 입력일자, 수정일자는 기본으로 넣게되는데 jpa에서 이를 자동으로 관리해준다. @EnableJpaAuditing먼저 jpa의 auditing 기능을 사용하려면 @EnableJpaAuditing 어노테이션을 사용해야한다. Application.java에 클래스 범위의 어노테이션으로 사용하면 인식 가능하지만, junit 테스트 시 @WebMvcTest와 충돌되는 문제가 있기 때문에 따로 JpaConfig라는 클래스를 생성해서 인식되도록 한다. JpaConfig.javaimport org.springframework.context.annotation.Confi.. 이전 1 2 3 4 ··· 15 다음