샤자의 개발일지
-
[ORACLE] Timestamp를 이용한 데이터 복구샤자의 개발일지/Oracle 2025. 5. 23. 15:49
[ORACLE] Timestamp를 이용한 데이터 복구 블로그 예시데이터베이스를 운영하다 보면 실수로 데이터를 삭제하거나 잘못 변경하는 경우가 종종 발생합니다. 이런 상황에서 Oracle의 Timestamp와 Flashback Query 기능을 활용하면 과거 시점의 데이터를 쉽게 조회하고 복구할 수 있습니다.1. Flashback Query란?Oracle Flashback Query는 테이블의 과거 상태를 조회할 수 있는 기능입니다. 실수로 데이터를 삭제하거나 변경했을 때, 특정 시점의 데이터를 SELECT문으로 간단하게 확인하고 복구할 수 있습니다2. 실전 예시: 직원 데이터 복구상황오전 9시 30분에 직원 JOHN의 데이터가 정상적으로 있었으나, 오후 12시 30분에 실수로 삭제된 것을 발견했습니다...
-
[sqlMap]there is no statement named 오류샤자의 개발일지/Spring Framework 2025. 5. 23. 13:27
MyBatis를 사용할 때 "there is no statement named 오류" 또는 "Invalid bound statement (not found)"와 같은 메시지는 SQL 매핑을 찾지 못했다는 의미입니다. 이 오류는 주로 아래와 같은 원인에서 발생합니다. 주요 원인으로는 1) Mapper 인터페이스의 메서드명과 XML의 id 불일치 Mapper 인터페이스의 메서드명과 매핑되는 XML 파일의 , , , 등의 id 속성이 정확히 일치해야 합니다. 오타, 대소문자, 공백 등도 모두 영향을 줍니다. 2) Mapper XML의 namespace 불일치 의 값이 Mapper 인터페이스의 전체 패키지 경로와 정확히 일치해야 합니다. 3) mapper-locations 설정 오류application.ym..
-
error happened while setting a property on the result object 오류샤자의 개발일지/java 2025. 5. 7. 17:16
이 오류는 주로 iBatis(MyBatis)와 같은 ORM(Object-Relational Mapping) 프레임워크에서 SQL 쿼리 결과를 자바 객체(VO, DTO 등)에 매핑하는 과정에서 발생합니다. 즉, 데이터베이스에서 조회한 값을 자바 객체의 프로퍼티(필드)에 할당할 때 문제가 생겼다는 의미입니다. [주요 원인]1. 데이터 타입 불일치 예를 들어, DB 컬럼은 INT 타입인데, 해당 컬럼 값이 NULL일 경우, 자바 객체의 필드가 int(primitive)로 선언되어 있으면 NULL을 할당할 수 없어 오류가 발생합니다. 자바의 primitive 타입(int, double 등)은 NULL을 허용하지 않기 때문입니다. 2. SQL 쿼리와 ResultMap 매핑 오류 SQL 쿼리에서 조회하는 컬럼명과 ..
-
클릭 이벤트 새 창으로 열리게 변경샤자의 개발일지/JavaScript, jQuery 2025. 4. 22. 14:54
새 창(탭)으로 form을 submit하려면 form 태그에 target="_blank" 속성을 추가하면 됩니다. jQuery로 동적으로 action을 바꾸고 submit할 때도, form에 target="_blank"가 있으면 새 창으로 열립니다. 코드 수정 방법1. form에 target 속성 추가2. jQuery 코드(변경 필요 없음)3. 동적으로 target 속성을 추가 최종 소스 정리하며)form에 target="_blank" 속성을 추가하거나, jQuery로 target을 동적으로 추가해주면 submit 결과가 새 창(탭)에서 열립니다
-
[Mybatis] XML 파일에 부등호 포함 쿼리 넣는 방법샤자의 개발일지/Spring Framework 2025. 4. 15. 13:57
XML 파일에 부등호 포함 쿼리 넣을 때 주의점 XML 파일에 부등호를 포함한 쿼리를 넣을 때, XML 파서가 부등호를 잘못 해석할 수 있습니다. 이 문제는 XML에서 부등호가 특수 문자로 취급되기 때문입니다. 따라서, XML 파일에 부등호를 포함한 쿼리를 넣을 때는 몇 가지 방법으로 해결할 수 있습니다. [해결 방법] 1)CDATA 섹션 사용 XML에서 부등호를 포함한 쿼리를 섹션 내에 넣으면, XML 파서가 해당 내용을 문자열로 인식하여 잘못 해석하지 않습니다. 2)부등호 대체 문자 사용 XML에서 부등호를 대체 문자로 표현할 수 있습니다. 예를 들어, 는 >로 대체할 수 있습니다. 정리) XML 파일에 부등호를 포함한 쿼리를 넣을 때는 CDATA 섹션을 사용하거나 부등호를 대체 문자로 표현하..
-
[eclipse] SVN E155004 Error 일 때샤자의 개발일지/Eclipse 2025. 4. 14. 15:51
SVN에서 E155004 오류는 주로 파일이나 디렉터리가 다른 작업에서 잠겨 있을 때 발생합니다. 이 오류는 SVN 작업 중 잠금이 걸려 있는 경우에 나타나며, 해결 방법은 다음과 같습니다: E155004 오류 해결 방법1. SVN Cleanup 실행IDE(이클립스, IntelliJ 등)에서 해당 프로젝트를 선택하고 Team > Cleanup 또는 Subversion > Cleanup을 실행합니다.2. SQLite를 사용하여 잠금 해제SQLite Browser를 다운로드하여 설치합니다. 프로젝트 폴더의 .svn 폴더에서 wc.db 파일을 SQLite Browser로 열고, 다음 쿼리를 실행합니다: sql)DELETE FROM WORK_QUEUE; DELETE FROM WC_LOCK; 변경 사항을 저장합..
-
JSP에서 특정 값이 없을 때는 0을 출력하고, 값이 있을 때는 그 값을 출력하는 조건식샤자의 개발일지/JavaScript, jQuery 2025. 4. 4. 11:03
JSTL의 ternary operator를 사용하거나 if-else 문을 사용할 수 있습니다. 그러나 JSTL에서 ternary operator는 지원되지 않으므로, if-else 문을 사용하거나 EL의 empty 연산자를 활용할 수 있습니다. 방법 1: if-else 문 사용 0 ${item.fjId} 방법 2: EL의 empty 연산자와 삼항 연산자 대신 조건식을 사용 JSTL의 EL에서 ternary operator는 지원되지 않지만, 다음과 같이 조건식을 활용할 수 있습니다: 0 ${item.fjId} 방법 3: Scriptlet 사용 스크립트릿을 사용하여 Java 코드로 조건식을 작성할 수도 있습니다: ..