스프링
JAVA 기술들을 더 쉽게 사용할 수 있게 해주는 오픈소스 프레임 워크로 중복코드의 사용률을 줄여주고, 비즈니스 로직을 더 간단하게 해준다.
- 프레임워크란? 자주 쓰일 만한 기능들을 한데 모아 놓은 유틸(클래스)들의 집합이다.
▶ 스프링 주요 특징
- IoC(Inversion of Control, 제어 반전)
인스턴스(객체)의 생성부터 소멸까지 객체 생명주기 관리를 컨테이너가 대신 해주는 것을 말한다.
즉, 제어권이 개발자가 아닌 loC에 있으며 IoC가 개발자의 코드를 호출하여 그 코드로 생명주기를 제어 하는 것.
- DI(Dependency Injection, 의존성 주입)
프로그래밍에서 구성요소 간의 의존 관계가 소스코드 내부가 아닌 외부의 설정파을을 통해 정의 되는 방식이다. 코드의 재사용을 높여 소스코드를 다양한 곳에 사용할 수 있으며 모듈간의 결합도도 낮출 수 있다.
즉, 필요한 부분(의존성)을 뺐다 꼈다 하면서 적절한 상황에 필요한 기능을 처리 할 수 있다.
- AOP(Aspect Object Programmming, 관점 지향 프로그래밍)
여러 객체에 공통으로 적용할 수 있는 기능을 구분함을써 재사용성을 높여 주는 프로그래밍 기법
▶ Spring의 구성 요소
- pom.xml : 라이브러리 의존성 등록하는 곳. 원하는 기능이 있다면 dependencies 하위에 dependecy로 추가 한다.
- src/main/resources : 프로젝트 자원 파일들을 저장.
- static 폴더 : html, css, javascript와 같은 정적 웹페이지를 저장하는 폴더
- templates : 뷰 템플릿 파일들을 저장하는 곳. 뷰페이지들의 통일성 있는 작업을 위한 템플릿이 있다면 그 템플릿들을 담아 놓는 폴더
- application.properties 파일 : 프로젝트 설정을 작성하는 파일로서, 서버 포트 번호 db설정, 인코딩, 멀티파트 등등 기본적인 내용들을 설정할때 사용하는 것이다.
- src/main/java : 자바 파일 저장.
기본 패키지 밑에 클래스를 만들어야 자동으로 스캐닝해서 객체를 생성하고 생명 주기를 관리해 준다.
- src/main/webapp : 뷰페이지 jsp 를 생성해서 저장하는 공간
'spring 스프링' 카테고리의 다른 글
lombok (롬복) 라이브러리 스프링으로 사용 (0) | 2023.05.15 |
---|---|
[spring] 스프링 session (0) | 2023.05.12 |
[spring] form 파라미터 (0) | 2023.05.09 |
[spring] 스프링 @ annotation 사용 (0) | 2023.05.09 |
[spring] spring mvc (1) | 2023.05.08 |