본문 바로가기
728x90
반응형

Spring3

Spring @Transaction @Transaction스프링에서 제공하는 선언적 트랜잭션 관리를 위한 어노테이션 동작 구조스프링에서 사용하는 프록시 구현체는 JDK Proxy(Dynamic Proxy), CGLib가 있다두 방식의 가장 큰 차이점은 타겟의 어떤 부분을 상속받아서 프록시를 구현하느냐에 있다JDK Proxy타겟의 상위 인터페이스를 상속받아 프록시 생성인터페이스를 구현한 클래스가 아니면 의존할 수 없다타겟에서 다른 구체 클래스에 의존하고 있다면 JDK 방식에서는 그 클래스(빈)를 찾을 수 없어 런타임 에러가 발생JDK Proxy는 내부적으로 Reflection을 사용해서 추가적인 비용이 발생한다CGLib Proxy타켓 클래스를 상속받아 프록시 생성인터페이스를 구현하지 않아도 된다구체 클래스에 의존하기 때문에 런타임 에러가 발.. 2025. 1. 14.
Spring Boot AutoConfiguration Spring Framework와 차이점스프링(Spring)은 프레임워크이며, 스프링 부트(Spring Boot)는 스프링 프레임워크를 기반으로 한 도구이다스프링은 설정 파일을 작성해야 하지만, 스프링 부트는 자동 설정을 제공하여 간편하게 개발할 수 있다또한, 스프링 부트는 내장 서버를 제공하여 쉽게 웹 애플리케이션을 실행할 수 있다 Spring은 스프링 프레임워크를 보다 세밀하게 제어하고자 하는 경우에, Spring Boot는 빠르고 간단하게 스프링 애플리케이션을 개발하고자 하는 경우에 사용된다자동 구성의 내부 동작 방법자동 구성(auto configuration)은 @SpringBootApplication 어노테이션에서 부터 시작@ComponentScan 어노테이션을 통해 개발자가 정의한 Compone.. 2025. 1. 11.
Spring Framework? 사용하는 이유의존성 관리(DI)와 객체 생명 주기 관리가 편리함스프링은 DI(Dependency Injection)를 통해 객체 간의 의존성을 효율적으로 관리함개발자는 객체 생성과 의존성 주입을 스프링이 대신 처리해 주므로 코드가 간결해지고 유지보수성이 향상됨비즈니스 로직과 공통 관심사를 분리할 수 있음(AOP)스프링의 AOP(Aspect-Oriented Programming)를 통해 트랜잭션 관리, 로깅, 보안과 같은 공통 관심사를 비즈니스 로직에서 분리할 수 있음이를 통해 코드 중복을 줄이고 유지보수성을 높일 수 있음유연하고 확장 가능한 구조 제공스프링은 모듈화된 구조로 필요한 기능만 선택적으로 사용할 수 있음스프링 부트를 사용하면 프로젝트 설정과 배포를 간소화할 수 있음강력한 생태계와 커뮤니티 지원.. 2025. 1. 10.
728x90
반응형