Struts와 Struts2의 차이점

Anonim

Struts vs Struts2

Struts (Apache Struts 또는 Struts 1이라고도 함)는 크로스 플랫폼 개방형 Java EE 웹 응용 프로그램을 개발하기위한 Java로 작성된 소스 프레임 워크. 초기 Java EE 웹 응용 프로그램 프레임 워크 중 하나였습니다. 그러나 몇 년 후, Struts2 (또는 Struts 버전 2)가 도착했습니다. 완전히 다른 웹 응용 프로그램 프레임 워크였습니다. 초기 버전에서 결함으로 인식되었던 몇 가지 문제를 해결했습니다. 이제 Struts2는 세계에서 Java EE 애플리케이션을 개발하는 데 매우 많이 사용되고 있습니다.

스트럿츠 란 무엇입니까?

Struts (Struts 1) 프레임 워크는 Java EE 웹 애플리케이션을 개발하기위한 초기 웹 애플리케이션 프레임 워크 중 하나였습니다. Struts 프레임 워크는 MVC (Model-View-Controller) 아키텍처의 사용을 권장합니다. Java Servlet API의 확장입니다. Craig McClanahan은 Struts의 창안자입니다. 처음에는 Jakaratha Struts로 알려졌으며 Apache Software Foundation의 Jakarta Project에서 관리되었습니다. Apache License 2. 0. Struts 프레임 워크는 요청 기반 프레임 워크라고하며 요청 처리기, 응답 처리기 및 태그 라이브러리의 세 가지 주요 구성 요소로 이루어져 있습니다. 표준 URI (Uniform Resource Identifier)는 요청 처리기에 매핑됩니다. 응답 핸들러는 제어를 전달합니다. 양식을 사용하여 대화 형 응용 프로그램을 작성하려면 태그 라이브러리가 제공하는 기능을 활용할 수 있습니다. Struts는 REST 응용 프로그램과 SOAP, AJAX 등과 같은 다양한 기술을 지원합니다.

Struts2 란 무엇입니까?

Struts 프레임 워크는 그 당시 Java EE 개발자가 특정 제한 사항 (주로 프레젠테이션 계층, 요청 처리 계층 및 모델 간의 분리 부족)을 포함하고 있음을 감지하여 Struts2가 도착한 지 몇 년 후였습니다. 사실, Struts2는 Struts와 완전히 다릅니다. Struts2는 단순히 WebWork2. 2 프레임 워크의 이름을 변경 한 결과 (즉, WebWork와 Struts 커뮤니티가 분리되어 작업 한 경우 궁극적으로 Struts2를 함께 사용하기 때문에) 동일한 코드 기반을 공유하지 않았습니다. 현재 안정적인 버전은 2011 년 5 월에 릴리스 된 버전 2. 2. 3입니다.

Struts와 Struts2의 차이점은 무엇입니까?

Struts 프레임 워크의 많은 문제점 중 하나는 인터페이스 대신 추상 클래스로 프로그래밍해야한다는 것이 었습니다. 이것은 Struts2 프레임 워크에 의해 해결되었습니다. 예를 들어 Struts 프레임 워크는 추상 클래스에서 Action 클래스를 확장해야하지만 Struts2 액션은 Action 인터페이스를 구현할 수 있습니다. 두 버전 간 스레딩 모델의 차이로 인해 Struts 프레임 워크에서 Action 객체와 관련된 스레드 안전 문제는 Struts2 프레임 워크에서 발생하지 않습니다.이유는 Struts2 Action 객체가 각 요청에 대해 인스턴스화되는 반면 Struts 프레임 워크의 Action은 해당 Action에 대한 모든 요청을 처리하는 인스턴스가 하나뿐이기 때문입니다. Struts 프레임 워크의 액션과 달리 Struts2 액션은 서블릿 API에 종속되지 않습니다.

Struts2 프레임 워크의 테스트 가능성은 Struts 프레임 워크보다 비교적 높습니다. Struts2 Actions는 인스턴스화, 속성 설정 및 메소드 호출의 세 단계를 따라 간단하게 테스트 할 수 있습니다. Struts2 프레임 워크에서는 입력 속성을 입력 속성으로 사용하므로 두 번째 입력 객체를 유지하지 않아도 입력을 수확하기가 더 쉽습니다. Struts에 존재하는 JSTL 통합에 대한 지원 외에도 Struts2 프레임 워크는보다 강력하고 표현적인 OGNL (Object Graph Notation Language)을 사용할 수 있습니다. 유형 변환의 경우, Strut 및 Strut2는 각각 Commons-Beanutils 및 OGNL을 사용합니다. 이러한 향상으로 인해 Struts2 프레임 워크는 매우 성숙한 프레임 워크로 간주되며 Java EE 프로그래머들 사이에서 매우 인기가 있습니다. 반면에 Struts 프레임 워크는 현재 쓸모없는 것으로 간주됩니다.