본문 바로가기
반응형

분류 전체보기34

[Spring] AOP 예제 AppRunner.java ApplicationRunner를 상속 받은 클래스는 스프링이 실행될 때 (애플리케이션) run이 동작된다. 스프링 부트에서 AOP 를 사용하기 위해서는 Java Bean에 등록을 해서 사용을 해야 한다. Bean에 등록하기 위해서 Component 어노테이션을 붙여준다. 저장된 Bean을 사용하기 위해 getBean과 비슷한 기능을 하는 Autowired 를 붙여준다 package kr.re.kitri.security.web.edu.exercise2.aop; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.ApplicationArguments; import.. 2023. 9. 25.
[Spring] 3. AOP AOP(Aspect-Orented Programming) 이란? 관점(Aspect)지향 프로그래밍 문제를 바라보는 관점을 기준으로 프로그래밍 하는 기법을 말한다. 기본적인 개념은 공통 관심 사항을 구현한 핵심 로직을 구현한 코드 안에 삽입하는 것이다. 위 그림을 MVC 에 적용시켜 보자면 presentation layer → View Business layer → Controller Data Access Layer → Model AOP(Aspect Oriented Programming) 사용 이유? 애플리케이션 전반에 걸쳐 적용되는 공통 기능이 존재하는데 (로깅, 트렌젝션, 보안 등) 핵심 비지니스 로직과 구분하기 위해 공통 기능을 공통 관심사항(cross-cutting concern)이라고 표현하며, .. 2023. 9. 24.
[Spring] Spring 시작하기 1. Spring 시작하기 개발환경세팅 spring 2.* java 11버전 권장 spiring 3.* java 17이상 버전 권장 java 20 , spring 3.1.3 depandencies spring web thyeleaf > html 만들어주는 템플릿 main 실행 SpringApplication.run(클래스명.class) spring 에서 톰캣 웹서버를 내장하고있어서 톰캣 웹서버를 자체적으로 띄우면서 실행 2. 라이브러리 살펴보기 maven, gradle 같은 빌드 툴들은 의존관계를 관리해준다. start-web 을 설치했기 때문에 관련된 의존 라이브러리가 함께 설치된다. 라이브러리에서 웹서버(Tomcat)를 내장하고 있어서 코드를 실행시키면 자동으로 웹서버를 띄워준다. 2.1 스프링부트 .. 2023. 9. 24.
[Spring] 2. DI(Dependancy Injection)란? DI 는 의존을 처리하는 방식이다. 의존에 대한 설계 패턴으로, 의존성 주입이라는 단어로 번역되어 사용된다. 스프링은 기본적으로 DI를 기반으로 동작하기 때문에, 스프링을 잘 이해하려면 DI에 대한 이해가 필수이다. public class A { private B b = new B(); } // 위의 코드보다 느슨한 의존성을 가짐 // 필요할 때만 b를 넣어서 사용 가능. public class A { private B b; public A(B b) { this.b = b; } } 위 의 코드의 경우 A클래스가 B클래스에 의존한다 라고 표현한다. 이렇게 두 클래스 간에 의존성이 있다면 몇 가지 단점이 있다. B 클래스를 상속 받은 하위 클래스 C로 변경하려고 할 때 A 클래스의 코드를 수정해 주어야 한다.. 2023. 9. 24.
반응형