[Spring] Spring Application

강민승·2023년 9월 7일
0

spring

목록 보기
12/17

Spring Application

스프링에 대해서 간략하게 집고만 넘어가자.

Spring Application은 Java 기반의 애플리케이션을 구축하기 위한 포괄적인 프레임워크다. Spring Framework는 효율적이고 유연한 방식으로 애플리케이션을 개발하고 유지보수하기 위한 다양한 기능과 특징을 제공한다.

Spring 주요기능

IoC (Inversion of Control) 컨테이너
: Spring의 핵심 기능 중 하나로, 객체의 생명 주기와 의존성을 관리합니다. 이를 통해 객체 간의 의존성을 줄이고, 유연하고 확장 가능한 코드를 작성할 수 있습니다.

AOP (Aspect-Oriented Programming)
: 관심사의 분리를 통해 코드 재사용성과 유지보수성을 향상시키는 프로그래밍 패러다임. Spring은 AOP를 통해 트랜잭션 관리, 로깅, 보안 등의 공통 관심사를 분리할 수 있습니다.

Data Access
: JDBC와 ORM 프레임워크 (예: Hibernate, JPA)를 지원하여 데이터베이스 연결 및 쿼리 작업을 단순화합니다. 또한, 선언적 트랜잭션 관리를 제공합니다.

Spring MVC
: 웹 애플리케이션을 구축하는데 사용되는 모듈로, Model-View-Controller 패턴을 구현합니다.

Spring Boot
: Spring 기반의 애플리케이션을 빠르고 쉽게 구축하고 배포할 수 있도록 도와주는 프로젝트. 내장 서버, 자동 구성, 프로덕션 준비 기능 등을 제공합니다.

Spring Data
: 데이터 액세스를 단순화하고, 리포지토리 기반의 CRUD 연산을 자동화합니다.

Spring Security
: 애플리케이션의 인증 및 권한 부여를 처리하는 보안 프레임워크.

Spring Cloud
: 마이크로서비스 아키텍처를 구축하고 운영하기 위한 다양한 도구와 서비스를 제공합니다.

Integration
: 메시징, 이메일, 웹 서비스, 스케줄링 등의 엔터프라이즈 통합 기능을 제공합니다.

Testing
: Spring 애플리케이션을 테스트하기 위한 지원과 도구를 제공합니다.

Spring Framework와 관련된 프로젝트들은 애플리케이션 개발의 전체 수명 주기를 통해 필요한 모든 기능을 제공하는 포괄적인 솔루션을 제공하며, 코드의 품질, 유연성, 유지보수성을 향상시키는 데 큰 도움을 줍니다.

Application.run()

@SpringBootApplication 어노테이션을 통해 스프링 Bean을 읽어와 자동으로 생성해준다.

이 어노테이션이 있는 파일 위치부터 설정들을 읽어가므로, 반드시 프로젝트의 최상단에 만들어야 한다.

SpringApplication.run()으로 해당 클래스를 run하면, 내장 WAS를 실행한다. 내장 WAS의 장점으로는 개발자가 따로 톰캣과 같은 외부 WAS를 설치 후 설정해두지 않아도 애플리케이션을 실행할 수 있다.

또한, 외장 WAS를 사용할 시 이 프로젝트를 실행시키기 위한 서버에서 모두 외장 WAS의 종류와 버전, 설정을 일치시켜야만 한다. 따라서 내장 WAS를 사용하면 이런 신경은 쓰지 않아도 되기 때문에 매우 편리하다.

실제로 많은 회사들이 이런 장점을 살려 내장 WAS를 사용하고 있고, 전환하고 있다.

profile
Step by Step goes a long way. 꾸준하게 성장하는 개발자 강민승입니다.

0개의 댓글