목록STUDY/Spring (3)
TJ_Log

1. Spring AOP (Aspect Oriented Programming) AOP는 프로그램의 핵심인 비즈니스 로직과 분리되는 횡단관심사(cross-cutting concern)를 분리, 모둘화하여 설계하고 개발하는 방법론을 뜻한다. 주로 로깅이나 세션같은 기능을 개발할 때 주로 사용되는데 예를들어, 로깅에 있어 기능 별 소스코드에 로깅을 위한 코드를 함께두어 비즈니스 로직과 같이 실행되는것이 아닌 로깅을 담당하는 특정 모듈을 만들어 해당 기능이 실행될 때 이 모듈을 통해 로깅을 하는 것을 AOP라 할 수 있다. 관점 지향 프로그래밍 => 어떤 로직 기준 핵심적인 관점, 부가적인 관점으로 나눠 각각 모듈화 하는 것 소스 코드상에 계속 반복해서 쓰는 코드를 흩어진 관심사라 부름, 흩어진 관심사를 Asp..

1. IoC (Inversion of Control) 개발 초기 자바 객체를 생성하고 객체간 의존관계를 연결하는 등의 제어권을 개발자가 직접 가지고 있었으나 서블릿, EJB(Enterprise Java Bean)이 등장하면서 제어권이 서블릿, EJB를 관리하는 외부 컨테이너로 넘어가면서 객체의 생성부터 생명주기의 관리까지 모든 객체에 대한 제어권이 사용하는 쪽(IoC Container)로 바뀐 것을 IoC, 제어의 역전이라 한다. 제어의 역전 = 메소드나 객체의 호출작업을 외부에서 결정되는 것을 의미 스프링 컨테이너가 필요에 따라 개발자 대신 Bean들을 관리(제어)해주는 행위 의존성을 역전시켜 객체 간 결합도 줄이고 유연한 코드 작성 가능 (가독성 및 , 코드 중복, 유지 보수 편안) 제어의 흐름을 사..

1. 빌드 관리 도구 - 빌드 관리 도구란? 프로젝트 내에 필요한 각종 xml, properties, jar파일과 java 코드들을 JVM이나 WAS가 인식할 수 있도록 패키징 해주도록 빌드하는 도구 => 즉, 빌드 자동화 도구 이다. 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램이라 할 수 있다. APP개발 시 필요한 외부 라이브러리들을 번거롭게 다운로드 할 필요없이, 빌드도구 설정파일에 필요한 라이브러리 종류와 버전, 종속성 정보를 명시해 자동으로 다운로드 및 관리해주는 도구이다. 2. Maven - Maven은 Java용 프로젝트 관리도구로 Apache의 Ant 대안으로 만들어짐 - 빌드 중인 프로젝트, 빌드 순서, 다양한, 외부 라이브러리 종속성 관계를 pom.xml파일에 명..