스프링

· Spring
[Spring] Spring AOP 구현해보기 (@Aspect, @Pointcut, @Around) 이전 글 [Spring] Spring AOP AOP AOP : Aspect Oriented Programming의 약자로, 여러 객체에 공통으로 적용할 수 있는 기능을 분리해서 재사용성을 높여주는 프로그래밍 기법입니다. AOP는 핵심 기능과 공통 기능 muscleking3426.tistory.com 프록시 생성 방식 package config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context...
· Spring
이전 글 [Spring] Spring AOP AOP AOP : Aspect Oriented Programming의 약자로, 여러 객체에 공통으로 적용할 수 있는 기능을 분리해서 재사용성을 높여주는 프로그래밍 기법입니다. AOP는 핵심 기능과 공통 기능의 구현을 분리함으로 muscleking3426.tistory.com 스프링 AOP 구현 스프링 AOP를 이용해서 공통 기능을 구현하고 적용하는 방법은 단순합니다. - Aspect로 사용할 클래스에 @Aspect를 붙인다. - @Pointcut으로 공통 기능을 적용할 Pointcut을 정의한다. - 공통 기능을 구현한 메서드에 @Around를 적용한다. @Aspect, @Pointcut, @Around를 이용한 AOP 구현 개발자는 공통 기능을 제공하는 As..
· Spring
AOP AOP : Aspect Oriented Programming의 약자로, 여러 객체에 공통으로 적용할 수 있는 기능을 분리해서 재사용성을 높여주는 프로그래밍 기법입니다. AOP는 핵심 기능과 공통 기능의 구현을 분리함으로써 핵심 기능을 구현한 코드의 수정 없이 공통 기능을 적용할 수 있게 만들어 줍니다. AOP는 우리말로 관점지향 프로그래밍 정도로 많이 번역하고 있으나, Aspect는 구분되는 기능이나 요소를 의미하기 때문에, '관점'보다는 '기능 또는 관심'이라는 표현이 더 알맞습니다. 스프링도 프록시를 이용해서 AOP를 구현하고 있습니다. AOP의 기본 개념은 핵심 기능에 공통 기능을 삽입하는 것입니다. 즉, 핵심 기능의 코드를 수정하지 않으면서 고통 기능의 구현을 추가하는 것이 AOP입니다. ..
· Spring
스프링 컨테이너는 빈 객체를 한 개만 생성합니다. 과연 그런지 한번 코드를 통해 알아볼까요? public class Main { public static void main(String[] args) { //1. 컨테이너 초기화 AbstractApplicationContext ctx = new AnnotationConfigApplicationContext(AppCtx3.class); //2. 빈 객체 로드 후, 사용하기 Client client = ctx.getBean(Client.class); Client client2 = ctx.getBean(Client.class); System.out.println("두 개의 객체가 같을까 ? : " + (client == client2)); client.send(..
· Spring
지난 포스팅에서는 빈 라이프 사이클 중 스프링에서 제공하는 인터페이스를 이용해서 빈 객체의 초기화와 소멸을 실습해 보았습니다. [Spring] 빈 라이프 사이클 : Bean 초기화, 소멸 (인터페이스) 컨테이너 초기화와 종료 스프링 컨테이너는 초기화, 종료 라이프사이클을 갖고 있습니다. 컨테이너 초기화 AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(AppContext.class); 위 예제를 muscleking3426.tistory.com 이번 포스팅에서는 커스텀 메서드를 통해 빈 객체의 초기화와 소멸을 실습해 보겠습니다. 빈 객체의 초기화와 소멸을 스프링 인터페이스(InitializingBean, Dispo..
· Spring
컨테이너 초기화와 종료 스프링 컨테이너는 초기화, 종료 라이프사이클을 갖고 있습니다. 컨테이너 초기화 AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(AppContext.class); 위 예제를 보면, AnnotationConfigApplicationContext 생성자를 이용해서 컨텍스트 객체를 생성하는데 이 시점에 스프링 컨테이너를 초기화합니다. 컨테이너에서 빈 객체 구하고 사용 Greeter g = ctx.getBean("greeter", Greeter.class); String msg = g.greet("스프링"); System.out.println(msg); 스프링 컨테이너는 설정 클래스에서 정보를 읽..
· Spring
AOP(Aspect-Oriented Programming)는 소프트웨어 개발에서 모듈화와 코드 재사용을 향상하기 위한 프로그래밍 패러다임 중 하나입니다. AOP는 주로 코드의 횡단 관심사(Cross-Cutting Concerns)를 분리하여 모듈화하는 데 중점을 둡니다. 횡단 관심사란 응용 프로그램의 여러 부분에서 발생하는 비즈니스 로직과는 관련이 적지만 여러 부분에서 공통적으로 나타나는 관심사를 의미합니다. AOP의 핵심 아이디어는 횡단 관심사를 각각의 핵심 모듈에서 분리된 모듈로 정의하고, 이러한 모듈을 필요한 위치에 삽입하여 코드의 재사용성과 유지보수성을 향상시키는 것입니다. 이를 위해 AOP는 주로 다음과 같은 개념의 구성요소를 사용합니다. 1. Ascept (관점) 관점은 횡단 관심사를 정의하는..
· Spring
이전 글에서 Autowired에 대한 포스팅을 했으니 읽고 오시면 이해하시기 쉽습니다. 굳이 읽지 않으시고 바로 보셔도 무방합니다. [Spring] @Autowired - 의존성 자동주입 Spring 프레임워크에서 @Autowired 어노테이션은 자동 의존성 주입을 강력한 도구로 사용됩니다. @Autowired을 통해 Spring은 Application Context에서 필요한 Bean을 찾아서 해당 필드에 주입합니다. 이를 통해 muscleking3426.tistory.com Spring에서 @Autowired 어노테이션은 일반적으로 Spring 컨테이너가 자동으로 빈을 주입할 때 사용됩니다. 그러나 때로는 특별한 경우에 수동으로 빈을 등록하고 주입할 때가 있습니다. 이번에는 @Autowired 어노테..
· Spring
Spring 프레임워크에서 @Autowired 어노테이션은 자동 의존성 주입을 강력한 도구로 사용됩니다. @Autowired을 통해 Spring은 Application Context에서 필요한 Bean을 찾아서 해당 필드에 주입합니다. 이를 통해 코드의 가독성과 유지보수성을 높이고, 의존성 주입에 대한 번거로움을 줄일 수 있습니다. @AutoWired 개념 생성자, 필드, 메서드 등의 위치에 사용됩니다. 주로 의존성을 주입받아야 할 대상에 어노테이션을 적용하며 Spring에 해당 객체를 주입하도록 지시합니다. 1. 생성자 주입 @Service public class MyService { private final MyRepository myRepository; @Autowired public MyServi..
· Spring
이번에는 스프링 프레임워크에서 생성자 주입을 활용한 의존성 주입에 대해 알아보겠습니다. 생성자 주입은 스프링의 강력한 기능 중 하나로, 객체 간의 의존성을 외부에서 주입하는 방식을 제공합니다. 1. 생성자 주입이란? 생성자 주입은 객체를 생성할 때 외부에서 의존하는 객체를 주입하는 방식입니다. 이는 객체 간의 결합도를 낮추고 코드의 유연성을 높이는 데에 큰 도움이 됩니다. public class MemberRegisterService { private MemberDao memberDao; // 생성자를 통해 의존 객체 주입 public MemberRegisterService(MemberDao memberDao) { this.memberDao = memberDao; } // ... 이하 생략 } 2. 스프..
runnnerDevHong
'스프링' 태그의 글 목록 (2 Page)