was에 application을 기동하려고 하는데 위와 같은 오류가 발생하였다. 비교적 원인과 조치방법이 명확하게 나온 오류로그이다. 원인 : Error attempting to get column 'TYPE' from result set. 즉 한글이 깨진다는 것이다. ORA-01861: literal does not match format string 오류 조치 ORA-01861: literal does not match format string .. 아주 골치 아픈 오류였다. 왜 골치가 아팠냐면 내 로컬이나 AS-IS 서버에서는 잘 동작하는데 새로 이전을 할 서버에서는 위와 같은 오류가 나며 동작하지 않 oingdaddy.tistory.com 이거랑 비슷할수도 있지만 조금 성격이 다른듯하다. 조치방법..
예전부터 ojdbc는 maven repository에 있지 않고 3rd party library로 다운받아서 직접 참조해서 사용하곤 했다. 그러다가 ojdbc8 버전을 사용하려고 했는데 maven repo에 똭! 이제 더이상 ojdbc를 3rd party에 올리지 않고 이렇게 central repo에서 다운받아서 쓸수 있겠구나 했다. 그래서 내게 맞는 버전을 찾아서 pom.xml에 추가를 했다. 그리고 was를 기동했더니.. [18:44:22.348][INFO ][org.apache.catalina.core.StandardEngine.log:line173] - Starting Servlet engine: [Apache Tomcat/9.0.41] [18:44:22.900][WARN ][org.apache...
제목 그대로 Oracle version & JDK version 에 따른 ojdbc version 선택을 하는 방법이다. ojdbc란? Oracle JDBC이다. JDBC는 Java Database Connectivity, 즉 Java와 Database를 연결해주는 역할을 한다. 일단 Oracle에서 지원하는 JDBC 드라이버 버전을 보자. Release GA Date Premier Support Ends Extended Support Ends Sustaining Support Ends 19c(장기 릴리스) 2019년 4월 2024년 4월 2027년 4월 무기한 18.3 2018년 7월 2021년 6월 사용할 수 없습니다 무기한 12.2 2017년 3월 2020년 11월 사용할 수 없습니다 무기한 12...
배치 기능 개발 중 다음과 같은 오류가 발생하였다. [18:18:17.212][ERROR][org.springframework.batch.core.step.AbstractStep.execute:line237] - Encountered an error executing step workerStep in job samplePartitionerJob java.lang.AbstractMethodError: Receiver class oracle.jdbc.driver.OraclePreparedStatementWrapper does not define or inherit an implementation of the resolved method abstract closeOnCompletion()V of interfa..
MySql을 연동할 때 The server time zone value ‘KST’ is unrecognized or represents more than one time zone 이런 오류가 발생한다면 명시적으로 time zone을 지정해서 해결할 수 있다. AS-IS url jdbc:mysql://xx.xx.xx.xx:3306/testDB TO-BE url jdbc:mysql://xx.xx.xx.xx:3306/testDB?serverTimezone=UTC 이런식으로 url에 serverTimezone을 설정해주면 된다. 추가적으로 인코딩 설정도 이와 같이 해줄 수 있다. jdbc:mysql://xx.xx.xx.xx:3306/testDB?characterEncoding=UTF-8&serverTimezon..
ORA-01861: literal does not match format string .. 아주 골치 아픈 오류였다. 왜 골치가 아팠냐면 내 로컬이나 AS-IS 서버에서는 잘 동작하는데 새로 이전을 할 서버에서는 위와 같은 오류가 나며 동작하지 않았다. 특정 환경에서 안되니 문제에 접근할때 특정 환경과 잘 되는 환경의 차이를 분석해 봐야 한다. 분석을 할때 되는 곳과 안되는 곳에서 아래의 구문을 DB developer 에서 한번 돌려보도록 하자. SELECT * FROM nls_session_parameters WHERE PARAMETER LIKE '%DATE%' OR PARAMETER LIKE '%LANG%'; 그럼 위와 같이 DB의 NLS_LANGUAGE, NLS_DATE_FORMAT, NLS_DAT..
성능테스트를 할때 이슈가 발생을 하였다. 성능이 생각만큼 나오지 않아서 원인을 찾다가 한가지 흥미로운 사실을 발견했다. MSSQL은 DataType에 따라서 우선순위가 존재하는데 NVARCHAR가 VARCHAR보다 더 높은 우선순위를 가지고 있다. 내가 Query의 Binding할 문자열에 대해 DataType을 지정하지 않고 그냥 값을 넘기면 MSSQL의 내부 규칙에 의해 NVARCHAR type으로 값이 넘어가게 된다.SELECT * FROM TB_EMP WHERE EMP_NAME LIKE 'Volibear';이렇게 넘긴다면 넘긴 Volibear라는 값은 NVARCHAR로 넘어간다는것이다. CREATE TABLE TB_EMP ( EMP_ID varchar(100), EMP_NAME varchar(10..