Spring

gotcha!!·2023년 4월 20일
0

Spring

목록 보기
1/4

Spring framework

자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로 간단하게 스프링(Spring)이라고도 불린다.
동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있으며
대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는
전자정부 표준 프레임워크(Spring MVC Project 기반 프레임워크)의 기반 기술로서 쓰이고 있다.

특징 종류

IOC(제어 반전), DI(의존성 주입), POJO(Plain Old Java Object), PSA, Spring AOP

IOC

컨트롤의 제어권이 개발자가 아니라 프레임워크에 있다는 뜻으로
객체의 생성부터 모든 생명주기의 관리까지 프레임워크가 주도하고 있다.
객체를 생성하고, 직접 호출하는 프로그램이 아니라, 만들어둔 자원을 호출해서
사용한다.
new 객체() -> Bean

DI

설정 파일이나 어노테이션을 통해 객체간의 의존 관계를 설정하여
개발자가 직접 의존하는 객체를 생성할 필요가 없다.

POJO

J2EE, EJB와 같은 특정 기술이나 라이브러리의 내용을 상속받아 클래스를 구현하
지 않고 일반적인 기본 기능만을 가진 순수한 자바 객체를 의미한다.
특정 클래스에 종속되지 않으므로 자바의 객체지향적 설계가 쉬워지고,
코드길이 감소, 유지보수성 증가, 기존 Java API, 라이브러리 지원에 용이하다.

  • J2EE(Java2 Enterprise Edition) : Servlet, JSP 레벨의 서버 프로그래밍 인터페이스
  • EJB(Enterprise Java Bean) : 쉽게 웹 개발이 가능한 기술, 객체지향 장점을 포기해야 하는 문제점 발생

스프링 -> 하이버네이트 많이 사용함 어덯게 가능할까?
-> 스프링에서 정한 표준 인터페이스가 있기 때문에 == JPA (표준 인터페이스)

PSA

스프링은 다른 여러 모듈을 사용함에 있어 별도의 추상화 레이어를 제공한다. 예
를 들어 JPA를 사용할 때에서 Spring JPA를 사용하여 추상화하므로 실제 구현에
있어서 Hibernate를 사용하든 EclipseLink를 사용하든 개발자는
이 모듈의 의존 없이 프로그램에 집중할 수 있다.

profile
ha lee :)

0개의 댓글