Spring 관련 포스팅 목록
Spring Framework vs Spring MVC
Spring MVC vs 스프링 부트(Spring Boot)
Spring 공부를 하다보니 회사에서 사용했던 Struts와 Spring의 공통점과 차이점에 대해 문득 궁금해져서 찾아보았습니다.
Struts2 와 Spring Framework 을 비교하려고 찾아봤으나
Struts2 와 비교대상은 Spring MVC 였습니다 (Struts 와 Spring Framework 는 비교대상이 아니다)
Struts와 Spring은 모두 Java 웹 어플리케이션 을 개발하는 데 사용됩니다. Spring MVC와 Structs2는 매우 유사합니다.
Struts 는 Spring보다 이전에 개발되었지만, Struts 프레임 워크가 향상되어 현재는 둘다 Java를 사용하여 웹 애플리케이션을 개발하는 데 사용되고 있습니다.
하지만 실제 업무에서 Struts를 사용하며 구글링등 에러에 대한 정보를 찾으려고하면 Spring에 비해 정보가 확실히 부족한것을 알수 있습니다.
Spring Framework
- 오픈 소스 어플리케이션 프레임 워크
- 경량 프레임워크로 시스템 리소스를 효율적으로 활용합니다. 코딩 생산성을 높이고 전체 애플리케이션 개발 시간을 단축합니다.
- 웹 앱 개발을 위한 표준이며 J2EE(Java to Enterprise Edition)를 통해 사용
- 제어 IoC 및 종속성 주입 개념의 반전에서 작동
- POJO(Plain Old Java Object)로 고성능 애플리케이션을 설계할 수 있도록 도움
- 유연한 확장성
- IOC, DAO, AOP, ORM, Context, WEB MVC 등과 같은 여러 모듈이 있다.
- AOP(Aspect Oriented Programming)는 관점 지향 프로그래밍( 재활용성이 극대화)
Struts Framework
- 오픈 소스 어플리케이션 프레임 워크
- Java Servlet API를 활용하고 확장하여 MVC 아키텍처를 기반으로하는 프레임워크 (web MVC Framework)
- Java로 작성된 크로스 플랫폼 오픈 소스 프레임 워크로, Java EE 웹 애플리케이션(J2EE)을 개발
- Struts는 REST 응용 프로그램과 SOAP, AJAX 등과 같은 다양한 기술을 지원합니다.
- 운영해보면서 느낀 단점 : 규모가 커질수록 struts-config.xml이 방대해지고, 무수히 많은 액션클래스가 생긴다.
- POJO 기반의 동작(Action)
- 다양한 표현식 언어 EL 지원
- JSTL 사용 가능
Spring MVC vs Struts2 비교
Spring MVC | Struts2 | |
가벼운 프레임워크입니다. | 헤비급 프레임워크입니다. | |
웹 뿐만 아니라 자바 어플리케이션에도 특화된 프레임워크 (외부 인터페이스에 확장까지 고려한 프레임워크) |
웹에 특화된 프레임워크 | |
태그 라이브러리 |
태그 라이브러리를 지원하지 않습니다. | 태그 라이브러리 지시문을 지원합니다. (EL, JSTL) |
모듈 | 느슨하게 결합된 모듈이 있습니다.(재사용성 높음) | 밀접하게 연결된 프로그래밍 모듈을 가지고 있습니다. |
테스트 | 단위 테스트하기가 더 쉽다 | 테스트 하기 어렵다 |
계층 구조 | 모델링, 보기 및 컨트롤러를 위한 3개의 계층을 포함하는 계층화된 MVC 아키텍처가 있습니다. (MVC모델의 명확한 분리) |
계층 구조가 없습니다. |
전반적 흐름 | 스트럿츠가 xml 설정에 따라서 움직인다면 스프링은 xml뿐만 아니라 자바 기반 어노테이션을 활용하여 자바 빈을 등록할 수 있음. |
웹 브라우저 사용자의 요청 > 서블릿에서 해당 요청 받음 > xml 설정에 따라 알맞은 액션으로 연결. |
통합 | 메인 로직 전후에 더 적은 코딩이 필요한 ORM 기술과 통합됩니다. | 수동 코딩을 지원합니다. |
장점 | 유연성 쉬운 통합 쉬운 코드 테스트 |
심플한 디자인 다양한 보기 옵션 좋은 태그 기능 |
단점 | 안전성? | 부실한 문서 호환성 문제가 자주 있음 |
태그 라이브러리 관련 내용참고
Struts2 와 Spring Framework 을 비교하려고 찾아봤으나 Struts2 와 비교대상은 Spring MVC 였습니다
이에 다음 포스팅에서는 Spring Framework 와 Spring MVC 의 차이점에 대해 찾아보겠습니다.
Spring Framework vs Spring MVC
연관된 글:
참고 :
https://dev-jwblog.tistory.com/87
https://www.javaassignmenthelp.com/blog/spring-vs-struts/
https://www.holaxprogramming.com/2012/01/12/struts-and-spring-mvc/
https://themach.tistory.com/66
https://ko.strephonsays.com/struts-and-vs-spring-mvc-15200
'개발 > Spring' 카테고리의 다른 글
[Spring] QueryDSL (0) | 2023.02.20 |
---|---|
[Spring] Spring Boot (0) | 2023.02.10 |
[Spring] Spring Framework (0) | 2023.02.10 |
[Spring] Spring Framework vs Spring MVC (0) | 2022.12.26 |
[Spring] Spring MVC vs 스프링 부트(Spring Boot) (0) | 2022.12.26 |