본문 바로가기

분류 전체보기21

[기록] 220119 1. 스프링 핵심 기술의 응용 -OXM이란 : XML과 자바 오브젝트를 매핑해서 상호 변환해주는 기술을 OXM(Object-XML Mapping) 이라고 합니다. -ORM이란 : 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 ORM(Object-Relational Mapping) 이라고 합니다. -> JPA(인터페이스), Hibernate(jpa의 구현체), Querydsl(정적 타입을 이용해서 SQL과 같은 쿼리를 생성할 수 있도록 해 주는 비표준 오픈소스 프레임워크로 JPQL을 편하게 작성할 수 있게 만든 빌더 클래스 모음) -MyBatis : 개발자가 지정한 SQL, 저장프로시저 그리고 몇가지 고급 매핑을 지원하는 퍼시스턴스 프레임워크 Java Persistence Frame.. 2022. 1. 25.
[7장] 스프링 핵심 기술의 응용 XML 설정을 이용한 분리 SQL문을 스프링의 XML 설정파일로 빼내는 방법 SQL Map 프로퍼티 방식 Map을 이용하여 Key 값으로 value에 해당하는 SQL 문장을 가져도오록 한다. // UserDaoJdbc.java public class UserDaoJdbc implements UserDao { ... private Map sqlMap; public void setSqlMap(Map sqlMap) { this.sqlMap = sqlMap; } ... public void add(User user) { this.jdbcTemplate.update( // 프로퍼티로 제공받은 맵으로부터 key 값을 이용해 필요한 SQL가져오기 this.sqlMap.get("add"), user.getId(), u.. 2022. 1. 16.
[기록] 220112 1. Weaving 분리한 관점을 여러 차례 모듈에 삽입하는 것을 AOP에서는 위빙(Weaving: 엮기)이라고 부른다. 즉 공통 코드(Advice)를 핵심 로직 코드에 삽입하는 것이 Weaving이다. Aspect를 target에 제공하여 새로운 프록시 객체를 생성하는 과정을 말한다. Compile-time Weaving, Load-time weaving, Run-time weaving 세가지 방식의 Weaving이 존재하고, Spring AOP에서는 CGLIB Proxy, JDK Dynamic Proxy를 이용한 Run-time Weaving 방식을 제공한다. Spring AOP는 사용자의 특정 호출 시점에 IoC 컨테이너에 의해 AOP를 할 수 있는 Proxy Bean을 생성해준다. 동적으로 생성된.. 2022. 1. 16.
[기록] 220105 1. 인프라 로직 비즈니스 로직 외의 트랜잭션을 걸고 권한을 체크하는 등의 부가기능을 말한다. 애플리케이션 전 영역에 나타날 수 있다 → 중복 코드 비즈니스 로직과 함께 있으면 비즈니스 로직을 이해하기 어려워진다. 횡단 관심사 인프라 로직은 로깅, 트랜잭션, 권한검사, 성능측정 등 하나의 관심사를 갖게 된다. 비즈니스 로직을 수행할 때 인프라 로직의 중복이 횡단으로 나타나기 때문에 이를 cross-cutting concern, 횡단 관심사라고 부른다. 부가기능이라는 것은 횡단의 관심을 가지기 때문에 필수적으로 어떤 부가기능을 어디에 적용해야 하는가라는 질문을 만나게 된다. aspectJ에서는 메소드가 호출될 때, 실행될 때 필드에 접근할때, 객체가 생성될때 등 다양하게 join point를 구현해놨지만,.. 2022. 1. 9.