본문 바로가기

전체 글

(380)
[MyBatis / MySQL] useGeneratedKeys, keyProperty, keyColumn * useGeneratedKeys="true" DB에서 자동 생성된 기본 키(PK)값을 Java 객체로 가져올 수 있는 MyBatis 설정.( JDBC의 getGeneratedKeys() 호출을 MyBatis가 자동으로 처리해준다 )* keyPropertyJava 객체 필드명* keyColumnDB테이블 컬럼명  INSERT INTO test_table (item_id, item_name, item_des) VALUES (#{itemId}, #{itemName}, #{itemDes})=> 해당 컬럼에 대한 AUTO_INCREMENT 설정 필요 (MYSQL) => keyProperty 와 keyColumn 각각 이름 일치여부 주의  insert 이후에 생성된 키(id)를 받아 바로 update를..
[Java] "".equals(null) (equals 메서드) String.equals(Object obj) 메서드는 내부적으로 매개변수가 null일 경우 false를 반환한다.null.equals("")는 예외를 발생시키지만, "".equals(null)은 안전하게 false를 반환!! (equals메서드 내부로직)@Overridepublic boolean equals(Object anObject) { if (this == anObject) { // 같은 객체인지 확인 return true; } if (anObject instanceof String) { // anObject가 String 타입인지 확인 String anotherString = (String) anObject; int n = value.le..
[Python] 패킹(Packing) & 언패킹(Unpacking) * 패킹(Packing) 여러 개의 값을 하나의 튜플로 패킹.data = 1, 2, 3print(data)# 출력결과 : (1, 2, 3)=> 여러개의 값을 data 라는 변수에 패킹. 출력결과는 튜플인 것을 확인할 수 있다.  * 언패킹(Unpacking)하나의 변수에 묶여 있던 값을 여러 변수에 나눠서 할당. (자바스크립트의 구조분해할당과 유사한듯)a, b, c = dataprint(a) # 출력결과: 1print(b) # 출력결과: 2print(c) # 출력결과: 3=> data 튜플에 담겨있던 값들을 각각 a, b, c라는 변수에 언패킹.언패킹 변수의 갯수와 데이터(튜플, 리스트 등) 갯수를 맞춰줘야함!!  파이썬은 여러개의 값을 return하면 자동으로 튜플로 묶어버린다. (패킹)def g..
[SQLD] 연습문제 (SQL활용) 보호되어 있는 글입니다.
[SQLD] 강의 25~27. 계층형&트리구조, PIVOT형태, 정규표현식 4.6 계층형 질의와 셀프 조인  - 계층형 질의 예제 해설* 트리구조를 먼저 이해해야함.* START WITH : root 노드 지정.* CONNECT BY : 부모-자식 노드 연결 지정.  -  CONNECT BY PRIOR 자식 = 부모 : 순방향전개(부모 -> 자식)    프 - 자 - 부 - 순  -  CONNECT BY PRIOR 부모 = 자식 : 역방향전개(자식 -> 부모)    프 - 부 - 자 - 역* ORDER SIBLINGS BY : 동일한 레벨(형제노드)에서의 정렬.*** 부모자식으로 정렬한(순/역) 이후, 자식노드끼리 정렬(ASC/DESC).  4.7 PIVOT절과 UNPIVOT절  - PIVOT, UNPIVOT컬럼을 기준으로 여러 개의 행으로 나뉜 데이터를 행과 열을 전환해 테이..
[SQLD] 연습문제 (SQL기본) 보호되어 있는 글입니다.
[오류 / STS] 기본 클래스 com.(경로).TestApplication을(를) 찾거나 로드할 수 없습니다. 오류: 기본 클래스 com.(경로).TestApplication을(를) 찾거나 로드할 수 없습니다. => 메인클래스를 잡지 못해서 발생하는 오류. SVN에서 프로젝트 checkout이후 모든 설정을 이전과 동일하게 맞춰줬는데도 계속 오류가 났다.=> maven install 로 해결.  maven install 하면 하위 경로에 관련 라이브러리가 설치된다.C:\사용자\.m2\repository포맷 & 윈도우 재설치로 모든 디렉토리가 초기화된 상태였고,결국 로컬에 maven 라이브러리가 없어서 발생한 오류였다.일반적으로 첫 세팅시 필요!  maven install - 의존성 다운로드: pom.xml에 정의된 외부 라이브러리(JAR 등) 를 원격 저장소(Maven Central, Nexus 등)에서 가져와 ..
[JS] event.currentTarget vs event.target event.target실제 클릭된 요소 event.currentTarget 이벤트가 바인딩된 요소 아래의 버튼을 클릭했을 때,  버튼 클릭 (JavaScript)document.querySelector(".container").addEventListener("click", function (e) { console.log("event.target:", e.target); console.log("event.currentTarget:", e.currentTarget);}); (출력결과)event.target: 버튼 클릭event.currentTarget: => event.target : 클릭된 가장 하위 요소를 반환=> event.currentTarget : 클릭이벤트가( addEventLis..