Spring 3

[Spring] Spring MVC

Spring MVC란?Spring MVC는 Model-View-Controller 패턴을 따르는(제공하는) 웹 애플리케이션 프레임워크 구성 요소역할 설명Model애플리케이션의 데이터를 캡슐화 (주로 POJO)View모델 데이터를 렌더링하여 사용자에게 보여줌 (JSP 등)Controller사용자 요청을 처리하고 Model을 생성하여 View로 전달Tomcat -> 멀티 스레드 환경에서 돌아감.( 멀티 스레드 환경에서 항상 고민해야 할 것 : 공유 자원 –> 여러 스레드들이 공유 자원을 동시에 접근할 때, 상호 배제(lock, synchronized 등)가 필요함. )클래스내의 멤버 변수는 공유 자원임. DispatcherServlet(Front Controller로 작동)Spring MVC 프레임워크의 ..

Java 2025.06.24

[Spring] 의존성 주입이란? - DI(Dependency Injection)

의존성(Dependency)이란?클래스 A가 클래스 B를 내부에서 생성하거나 사용하는 경우, A는 B에 의존한다고 말함public class PetOwner { private AnimalType animal; public PetOwner() { this.animal = new Dog(); // 직접 생성 -> 강한 결합 (tight coupling) }}위 방식의 문제: 구현체가 바뀌면 코드 변경 필요 → 유연성 ↓ Dependency Injection(DI)란?객체의 의존성을 외부에서 주입(Inject) 받는 패턴Spring에서는 이 기능을 IoC 컨테이너가 수행함public class PetOwner { private AnimalType animal; publ..

Java 2025.06.05

[Spring] 스프링이란?

웹 시스템웹 환경하에서 서로 다른 종류의 컴퓨터 간에 상호 작용을 하기 위한 소프트웨어 시스템클라이언트-서버 기반HTTP, 메시지 지향적(XML/JSON)플랫폼 중립적, 독립적 프레임워크란?프레임워크는 ‘구조 품질’을 보장SW품질기능 품질 : 고객이 원하는 바를 충족하였는지(고객의 니즈)구조 품질 : 유지보수 및 재사용이 쉽고, 확장이 가능하며 잘 설계, 코딩 되어 있어야 함 프레임워크의 중요성프레임워크는 반제품– 애플리케이션 구조 및 코드의 상당 부분을 제공– 개발자는 애플리케이션의 핵심 로직에 집중 가능프레임워크 장점– 높은 생산성– 코드 품질 보장 라이브러리 vs 프레임워크중요한 차이점은 "Inversion of Control“ (IoC를 구현하는 대표적인 방법 → 의존성 주입(DI))– 클래스..

Java 2025.06.05
반응형