본문 바로가기

728x90
반응형

분류 전체보기

(269)
Lombok: 코드 다이어트 라이브러리 ▶ Lombok Java에서 Model(DTO, VO, Domain)을 만들 때 field에 대한 toString(), Getter()/Setter(), 생성자 등 반복적으로 만드는 코드를 어노테이션을 통해 줄여주는 라이브러리. ▶ Annotation @ToString : 모든 필드를 출력하는 toString() 생성. exclude 속성을 통해 특정 field를 toString() 결과에서 제외시킬 수도 있음. @ToString(exclude = "password") public class User { private String id; private String name; private String password; } 출력 시 클래스명(필드명1=필드값1, 필드명2=필드값2...)와 같은 형식으로 출력..
Mybatis에서의 Like문 사용 Mybatis에서 동적 쿼리 사용 시 DBMS별로 문법에 차이가 있음. DBMS 종류별 Mybatis LIKE문 사용 방법 Oracle SELECT * FROM table WHERE column LIKE '%'||#{parameter}||'%' MySQL SELECT * FROM table WHERE column LIKE CONCAT(‘%’, #{parameter}, ‘%’) MS-SQL SELECT * FROM table WHERE column LIKE '%' + #{parameter} + '%' 추가로 #{} 대신 ${}을 사용해 SQL에서 쓰던 문법대로 사용하는 것도 가능함. SELECT * FROM table WHERE column LIKE '%${parameter}%' 참고 자료 https://..
Mybatis에서 #{}와 ${}의 차이 ${} 사용 과정 ${} 사용 시 Statement 생성. Statement의 Parameter 값을 그대로 전달. arameter를 그대로 전달하기 때문에 문자열에 따옴표가 붙지 않음. 특징 Parameter가 바로 출력됨. 해당 컬럼의 자료형에 맞춰 Parameter의 자료형이 변경됨. Parameter 값이 넣어진 채로 Query문이 수행됨(parameter 값이 바뀌면 다른 query로 인식). 그러므로 Parameter의 값이 바뀔 때마다 항상 Query문에 대한 파싱을 진행해야 한다는 성능상의 단점을 내재하고 있어 속도가 저하될 수 있음. SQL Injection을 예방할 수 없어 보안 측면에서 불리함. 그러므로 사용자의 입력을 전달할 경우에는 사용하지 않는 편이 좋음. Table이나 Colu..
[CSS] CSS 적용 우선순위 스타일을 적용하는 데에는 다양한 방법이 있으며 동시에 여러 가지 방법을 사용할 수도 있기 때문에 Element에 적용되는 스타일이 충돌할 수도 있다. 따라서 스타일 적용에 대한 우선순위 규칙을 알아 둘 필요가 있다. CSS 적용의 우선순위는 아래와 같다(1이 높은 우선순위, 6이 낮은 우선순위). 1. !impoartant : 속성 값 뒤에 !important를 붙인 속성 2. Inline style attribute : HTML에서 style을 직접 지정한 속성 3. ID 선택자(#id)로 지정한 속성 4. Class 선택자(.class), pseudo class(가상 클래스, ex. :first-child) 5. Tag Element : tag 이름으로 지정한 속성 6. 상속된 속성 : 부모 태그의 ..
[Javascript] 비구조화 할당(객체 구조 분해) function hello(name) { console.log('Hello' + name); } hello('kwkim'); 결과 : Hello kwkim! 위와 같은 방식을 es6 이상부터는 아래와 같은 방식으로 사용할 수 있다. function hello(name) { console.log(`Hello ${name}!`); } hello('kwkim'); 결과 : Hello kwkim! 다른 예시 const ironMan = { name: '토니 스타크', actor: '로버트 다우니 주니어', alias: '아이언맨' }; const captainAmerica = { name: '스티븐 로저스', actor: '크리스 에반스', alias: '캡틴 아메리카' }; function print(hero..

728x90
반응형