ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • spring과 spring boot의 다른 점
    Spring/spring 2023. 5. 2. 00:52

    1. 이 글을 쓰게 된 이유 ~ ~ 

    ● 평소에 스프링 부트를 사용해 편하게 스프링을 사용하면서 spring 프레임 워크에대해 학습했다. 이번에는 스프링 시큐리티를 공부하기 위해서 스프링 시큐리티에 대해서 알아보던 중 어느 한 글을 봤다. 회사에서 스프링 부트를 사용하지 않고 스프링 시큐리티를 사용해보라는 글이었다. 처음에는 이게 무슨 말인가 싶었다. 결국 둘다 스프링 프레임워크이고 스프링 부트는 스프링을 보다 편리하게 이용해주는 도구인데 굳이??? 스프링 부트를 사용하지 않고 스프링 시큐리티를 사용한다?? 이해가 되지 않았다.  그래서 알아보기로 했다.

     

    2. spring이란

    - 스프링(spring)은 자바 기반의 오픈소스 프레임워크로, 다양한 모듈을 제공하여 웹 어플리에키션 개발을 지원합니다.

     

    ● 스프링 특징

     1. 경량 컨테이너: 스프링은 경량 컨테이너로서, 객체의 생성과 소멸을 관리합니다. 이를 통해 객체 지향 프로그래밍의 장점인 모듈성, 유지 보수성, 재사용성 등을 강화할 수 있습니다.

    2. 제어 역행(IoC, Inversion of Control): 스프링은 제어 역행(IoC) 원칙에 따라 객체의 생성과 관리를 개발자가 아닌 스프링 컨테이너가 담당합니다. 개발자는 객체 생성과 관리에 부담감을 줄일 수 있게 되고 객체간의 관리를 용이하게 할 수 있게 된다.

    3. 의존성 주입(DI, Dependency Injection): 스프링은 의존성 주입(DI) 원칙에 따라 객체 간의 의존성을 관리합니다. 객체 간의 결합도를 낮추고 테스트 용이성과 유지 보수성을 강화할 수 있다.

    4. 관점 지향 프로그래밍(AOP Aspect-Oriented Programming): 스프링은 관점 지향 프로그래밍(AOP)를 지원하여 애플리케이션의 핵심 로직과 기능을 분리하여 관리할 수 있다. 애플리케이션의 모듈성과 확장성이 높아진다.

    5. 트랜잭션 관리: 스프링은 트랜잭션 관리를 지원하여 데이터베이스 연동 애플리케이션 개발을 편리하게 한다.

    6. 다양한 모듈 제공: 스프링은 다양한 모듈을 제공해준다. 

     

    ●  스프링 핵심

        1. 객체 지향 언어가 가진 강력한 특징을 살려내는 프레임워크

        2. 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크 

     

     

    3. spring 부트란

    - 스프링 부트는 스프링 프레임워크를 기반으로한 애플리케이션을 보다 쉽고 빠르게 할 수 있도록 도와준다.

      

    ● 스프링 부트 특징

    1. 자동 설정: 스프링 부트는 애플리케이션의 구성 요소를 자동으로 구성해주는 자동 설정 기능을 제공한다. 개발자는 별도의 설정 없이 바로 애플리케이션을 개발하고 배포할 수 있다.

    2. 내장형 서버: 스프링 부트는 내장형 서버를 제공한다. 개발자는 별도의 서버 설치나 설정없이 바로 애플리케이션을 실행할 수 있다.

    3. 간편한 배포: 스프링 부트는 애플리케이션을 실행하는데 필요한 모든 라이브러리를 JAR 파일 형태로 제공합니다. 이를 통해 개발자는 별도의 설치 없이 바로 애플리케이션을 배포할 수 있다.

     

    4. 스프링 부트를 사용하지 않고 스프링을 사용했을 때의 불편한 점

    스프링만을 사용했을 때 스프링으로 애플리케이션을 띄우려면 스프링에서 제공하는 웹 애플리케이션 서버(WAS)를 구축해야 한다. 대표적인 스프링 WAS로는 Apache Tomcat, Jetty, Underotow 등이 있다.

     

    - 별도의 WAS를 설치해 애플리케이션을 띄우는 과정

    1. WAS(Apache Tomcat)을 설치한다. 설치 후, Tomcat 디렉토리의 webapps 폴더에 스프링(Spring) 애플리케이션의 WAR 파일을 배포합니다.

    2. 스프링(Spring) 애플리케이션을 WAR 파일로 빌드합니다. 빌드된 WAR 파일은 Tomcat의 webapps 폴더에 배포할 수 있습니다.

     

    이렇듯 스프링을 이용해 애플리케이션을 띄우려면 별도의 WAS를 설치해 빌드하고 배포하는 과정을 거쳐야하지만 스프링 부트를 사용한다면 이러한 과정들 없이 내장된 톰캣 서버로 간단하게 애플리케이션을 실행할 수 있다. 

    'Spring > spring' 카테고리의 다른 글

    mongoDB란 뭘까용?_간단 요약!  (0) 2023.08.03
    @Autowired를 쓰고 안 쓰고의 차이!  (0) 2023.06.20
Designed by Tistory.