top 35 frequently asked struts interview questions answers
Struts 인터뷰 질문에 대한이 튜토리얼은 간단한 예제를 통해 Struts 개념을 설명합니다.
이 일련의 Struts 질문은 Struts에서 사용되는 입력과 함께 Struts 프레임 워크의 전체 개요, 애플리케이션의 흐름, Struts의 필요성, 조치, 상수 등을 안내합니다. 이 기사에서는 Struts 인터뷰에서 묻는 모든 중요한 질문을 다룰 것입니다.
아무도 Strtus2로 코드를 작성하라고 요구하지 않을 것이며, 모든 이론적 질문을 돌아 다니며 면접관은 후보자가 Struts 프레임 워크의 흐름에 대한 기본 지식이 있는지 여부를 알고 싶어합니다.
이 모든 질문을 꼼꼼히 살펴본 후, 작은 실시간 예제를 통해 자신의 말로 개념을 설명 할 수 있다면 이제 끝났습니다.
답변이있는 가장 자주 묻는 Struts 인터뷰 질문
Q # 1) Struts 프레임 워크 란 무엇입니까? 그 구성 요소는 무엇입니까?
대답: Struts는 웹 애플리케이션 개발에 적합한 플랫폼을 제공하는 웹 애플리케이션 개발 프레임 워크 유형입니다. Strut에는 서블릿, JSP, 사용자 정의 태그 및 메시지 리소스가 통합 프레임 워크에 포함됩니다.
Q # 2) 왜 우리는 Struts를 사용합니까?
대답: Struts는 MVC 아키텍처 (예 : Model, View, Controller)를 기반으로하므로 Business Logic, Design 및 Controller를 분리하여 코드를 더 간단하고 유지 관리하고 읽기 쉽게 만듭니다.
Q # 3) Struts 애플리케이션의 중요한 클래스는 무엇입니까?
답변 : 아래에 나열된 것은 Struts 애플리케이션의 가장 중요한 클래스입니다.
- 액션 서블릿 : 컨트롤러 클래스이며 들어오는 모든 요청을 처리합니다.
- 액션 클래스 : Action 클래스를 사용하면 소위 모델이라고도하는 모든 비즈니스 로직이 개발됩니다.
- 행동 양식 : Action Form은 하나 이상의 Action Mapping을 연결하는 Java Bean입니다. 웹 애플리케이션의 세션 상태를 유지합니다.
- 액션 매핑 : Action Mapping을 사용하면 Object와 Action 간의 매핑을 수행 할 수 있습니다.
- 액션 포워드 : 컨트롤러에서 대상으로 결과를 전달하는 데 사용됩니다.
Q # 4) Struts2의 새로운 기능은 무엇입니까?
대답: Struts2의 두드러진 특징은 다음과 같습니다.
- Struts2에서 Action 클래스는 POJO입니다. 클래스를 상속하거나 인터페이스를 구현할 필요가 없습니다.
- Struts2에는 뷰 구성 요소에 대한 JSP, Free 마커 및 Valocity가 있습니다.
- Struts2에서 Front Controller는 StrutsPrepareAndExecuteFilter입니다.
- Struts2에서 구성 파일 이름은 struts.xml이어야하며 classes 디렉토리에 있어야합니다.
- Struts2는 요청을 처리하는 동안 인터셉터 개념을 사용합니다.
Q # 5) MVC 란 무엇입니까?
예를 들어 데이터웨어 하우스의 차원 모델링
대답: MVC는 Model, View 및 Controller의 약자이며 웹 애플리케이션 개발을위한 소프트웨어 디자인 패턴이라고합니다.
모델: 모델은 응용 프로그램의 데이터 상태 및 비즈니스 논리를 유지 관리합니다.
전망: View는 사용할 모든 데이터를 표시합니다. 즉, 프레젠테이션을 표시합니다.
제어 장치: Controller는 View와 Model 간의 인터페이스 역할을합니다. 모든 요청을 가로 챕니다. 즉, Model / View에 대한 입력과 명령을 받아 그에 따라 변경합니다.
Q # 6) 인터셉터는 무엇입니까?
대답: 인터셉터는 작업이 호출되기 전에 사전 처리 로직을 제공하거나 작업이 호출 된 후 사후 처리 로직을 제공하는 객체입니다. 인터셉터는 유효성 검사, 예외 처리, 파일 업로드, 중간 결과 표시 등과 같은 다양한 작업을 수행하는 데 사용할 수 있습니다.
Q # 7) 인터셉터의 라이프 사이클 방법은 무엇입니까?
대답: 인터셉터의 수명주기 방법은 아래에 세 가지가 있습니다.
- init () 메서드
- intercept () 메서드
- destroy () 메서드
질문 # 8) Struts2 애플리케이션에서 요청은 어떻게 처리됩니까?
답변 : Struts2 Application의 요청은 다음과 같이 처리됩니다.
- 첫째, 수신 된 요청은 사용자에 의해 서버로 전송됩니다.
- 그런 다음 요청은 적절한 조치를 선택하는 FilterDispatcher에 의해 처리됩니다.
- 정의 된 인터셉터는 파일 업로드, 예외 처리 등과 같은 전처리 작업을 수행합니다.
- 이제 선택한 작업이 실행되고 작업이 수행됩니다.
- 다시 정의 된 인터셉터는 파일 업로드, 예외 처리 등과 같은 사후 처리 작업을 수행합니다.
- 최종 결과는보기 페이지의 형태로 사용자에게 표시됩니다.
Q # 9) Struts에서 Struts.xml 파일의 기능은 무엇입니까?
대답: struts.xml 파일에서 사용자는 특정 작업이 수행 될 때 특정 작업이 호출되도록 작업에 대한 모든 매핑을 정의 할 수 있습니다. 구성 파일이라고도하며 WEB-INF / classes 폴더 아래에 있습니다.
Q # 10) Struts에서 사용되는 구성 파일은 무엇입니까?
답변 : Struts에서 사용되는 구성 파일은 다음과 같습니다.
- ApplicationResource.properties.
- Struts-config.xml.
Q # 11) Struts에서 Validate () 및 Reset () 메서드를 사용하는 것은 무엇입니까?
대답:
확인 () 메서드는 속성이 채워진 후 속성의 유효성을 검사하는 데 사용되며 Form Bean이 작업에 전달되기 전에 호출됩니다. 작업 오류 모음을 반환합니다.
구문 : Public ActionErrors Validate (ActionMapping 매핑, HttpServletRequest 요청)
초기화 () 메소드는 새 값이 설정되기 전에 모든 ActionForm의 데이터를 재설정하는 데 사용됩니다. 정의 된 작업 양식을 사용하는 각 요청과 함께 struts 프레임 워크에 의해 호출됩니다.
구문 : public void reset ((ActionMapping mapping, HttpServletRequest request)
Q # 12) 밸류 스택이란 무엇인가요?
대답: 값 스택은 요구 사항 특정 개체를 포함하는 스택으로 설명 할 수 있습니다. 작업은 실행하는 동안 스택 맨 위에 유지됩니다.
그런 다음 개체는 Value Stack에 배치되고 사용자는 여기에서 SQL 작업을 수행 할 수 있습니다.
Value Stack의 다양한 방법은 다음과 같습니다.
- FindString () : 주어진 표현식에서 문자열을 찾는 데 사용됩니다.
- FindValue () : 주어진 표현식에서 값을 찾는 데 사용됩니다.
- 엿보기 () : 스택 맨 위에있는 개체를 제공합니다.
- 팝 (): 스택 맨 위에있는 개체를 제공하고 제거합니다.
- 푸시 () : 개체를 스택 맨 위로 밀어 넣습니다.
Q # 13) Action Context는 무엇을 의미합니까?
대답: 액션 컨텍스트는 액션이 실행되는 객체 컨테이너입니다. 작업 컨텍스트에 저장되는 값은 스레드별로 고유하므로 (예 : 스레드 로컬) 작업을 스레드로부터 안전하게 만들 필요가 없습니다.
ActionContext 클래스의 getContext () 메소드를 호출하여 ActionContext의 참조를 얻을 수 있습니다. 이것은 정적 팩토리 방법입니다.
예를 들면 : ActionContext 컨텍스트 = ActionContext.getContext ();
Q # 14) ActionInvocation의 사용은 무엇입니까?
대답: ActionInvocation은 액션의 실행 상태를 나타내는 데 사용됩니다. 액션과 인터셉터 객체를 보유합니다.
Q # 15) OGNL의 용도는 무엇입니까?
대답: OGNL (Object Graph Navigation Language)은 강력한 표현 언어입니다. ActionContext에 저장된 데이터의 접근성을 단순화하는 데 도움이됩니다. OGNL은 컬렉션 (예 : Map, List 및 Set)과의 상호 작용을 지원합니다.
Struts 프레임 워크는 ValueStack을 OGNL의 루트 객체로 설정하는 데 도움이됩니다. 액션 객체가 ValueStack으로 푸시되고 액션 속성에 직접 액세스 할 수 있습니다.
Q # 16) 액션 인터페이스에 존재하는 상수의 유형은 무엇입니까?
대답: 액션 인터페이스에서 제공하는 다섯 가지 유형의 상수가 있습니다.
그들은:
- 로그인
- 입력
- 성공
- 오류
- 없음
Q # 17) Struts2에서 액션 클래스를 어떻게 만들 수 있습니까?
대답: Struts2에서 액션 클래스를 생성하는 방법에는 여러 가지가 있습니다.
그들 중 일부는 다음과 같습니다.
- Strts2 @Action 주석 사용.
- ActionSupport 클래스를 확장하십시오.
- 액션 인터페이스를 구현합니다.
- execute () 반환 값으로 구성된 모든 Java 클래스는 Action Class로 구성 할 수 있습니다.
Q # 18) Struts에서 예외를 어떻게 처리 할 수 있습니까?
대답: Struts에서 예외는 아래와 같이 두 가지 방법으로 처리 할 수 있습니다.
- 프로그래밍 방식 예외 처리 : 여기에서 Try {} Catch {} 블록을 사용하여 예외를 처리 할 수 있습니다.
- 선언적 예외 처리 : 여기에서 struts-config.xml에 전역 예외 처리 태그를 정의하거나 태그 내에 예외 처리 태그를 정의 할 수 있습니다.
Q # 19) Struts에서 태그 라이브러리의 유형은 무엇입니까?
대답: Struts는 소프트웨어 개발을 쉽게하기 위해 많은 태그 라이브러리를 제공합니다.
그들은:
물건을 보내는 제품 테스트 사이트
- 빈 태그 라이브러리 : Java Bean 및 해당 속성에 액세스하는 데 사용됩니다.
- 중첩 된 태그 라이브러리 : 애플리케이션에서 중첩 된 Bean을 사용하는 기능을 제공합니다.
- 로직 태그 라이브러리 : 필요한 출력, 반복 기능 및 흐름 관리를 제공하는 데 사용됩니다.
- HTML 태그 라이브러리 : 필요한 HTML 출력을 얻는 데 도움이됩니다.
- 타일 태그 라이브러리 : 타일이있는 애플리케이션에서 사용됩니다.
Q # 20) Struts 액션의 다른 유형은 무엇입니까?
대답: Struts 액션에는 5 가지 유형이 있습니다.
다음과 같습니다.
- 포워드 액션 : 이 클래스를 사용하면 기존 서블릿을 다시 작성하지 않고도 Struts 컨트롤러와 그 기능을 제어 할 수 있습니다.
- 액션 포함 : IncludeAction 클래스를 사용하여 처리중인 요청에 대한 응답에 다른 리소스를 포함합니다.
- 스위치 동작 : 한 모듈의 한 리소스를 다른 모듈의 다른 리소스로 전환하는 데 사용됩니다.
- 디스패치 조치 : 관련 작업을 단일 클래스로 결합하는 데 사용됩니다.
- LookUpAction : 작업 이름이 작동하지 않는 경우 키로 작업을 실행하는 데 사용됩니다.
Q # 21) Struts2에서 태그의 다른 유형은 무엇입니까?
대답: Struts2의 다양한 태그 유형은 다음과 같습니다.
- 제어 태그 (Else tag, Iterator Tag, Merge Tag, Append Tag, Generator Tag 등의 경우)
- 데이터 태그 (액션 태그, Include Tag, Bean Tag, Date Tag, Param Tag, Property Tag, Push Tag, Set Tag, Text Tag 등)
- 모양의 날 (모든 간단한 UI 태그.)
- 아약스 데이
Q # 22) Struts2의 기본 결과 유형은 무엇입니까?
대답: struts2의 기본 결과 유형은 디스패처입니다. JSP 페이지를 디스패치하는 데 사용됩니다.
Q # 23) 국제화 란 무엇을 의미합니까? 왜 필요합니까?
대답: 국제화 (i18n)는 제품 및 서비스를 계획하고 구현하는 데 사용되는 인터셉터로, 특정 지역 언어 및 문화에 쉽게 적용 할 수 있습니다.
액션에 대한 로케일 설정을 처리합니다. 사용자가 자신의 로케일을 설정하고 제공된 로케일에 따라 데이터를 얻고 자 할 때 사용할 수 있습니다.
유튜브 비디오 다운로드를위한 최고의 소프트웨어
Q # 24) Struts2의 핵심 구성 요소는 무엇입니까?
대답: Struts2의 핵심 구성 요소는 다음과 같습니다.
- 인터셉터
- 가치 스택
- 액션 컨텍스트
- OGNL
- ActionInvocation
Q # 25) Custom Interceptor는 어떻게 만들 수 있습니까?
대답: 클래스에서 인터셉터 인터페이스를 구현하고 세 가지 라이프 사이클 메서드를 재정 의하여 사용자 정의 인터셉터를 만들 수 있습니다. 초기화 (), 파괴 (), 인터셉트 () . struts.xml 파일에서 인터셉터 항목을 정의하여 작성할 수도 있습니다.
Q # 26) Struts2에서 토큰 인터셉터의 기능은 무엇입니까?
대답: 웹 애플리케이션의 주요 문제점은 사용자에게 두 배의 금액을 청구하고 데이터베이스에 두 배의 값을 저장하는 이중 양식 제출입니다. 토큰 인터셉터를 사용하여 이중 양식 제출 문제를 해결할 수 있습니다. 이 인터셉터는 struts-default 패키지에 정의되어 있습니다.
Q # 27) Struts2 애플리케이션에서 파일을 업로드하는 방법은 무엇입니까?
대답: FileUploadInterceptor의 도움으로 struts2 애플리케이션에서 파일을 업로드 할 수 있습니다.
Q # 28) Struts2 Action은 동기화되어 있습니까?
대답: 예, Struts2 Actions는 새로운 수신 요청을 처리하기 위해 객체가 호출 될 때 동기화됩니다.
Q # 29) Struts2 인터셉터는 동기화되어 있습니까?
대답: Struts2 인터셉터는 싱글 톤 클래스이고 요청을 처리하기 위해 새 스레드가 생성되므로 동기화되지 않으며 공유 데이터와 관련된 문제를 피하기 위해 신중하게 구현해야합니다.
Q # 30) Struts2의 전면 컨트롤러는 무엇입니까?
대답: StrutsPrepareAndExecuteFilter는 Struts2의 Front Controller 클래스이며 모든 수신 요청의 시작점이기도합니다.
Q # 31) ValueStack과 OGNL은 어떻게 연결 되나요?
대답: OGNL은 ValueStack 데이터 또는 값을 조작하는 라이브러리 인 반면 ValueStack은 작업과 관련된 모든 값과 데이터가 저장되는 스택입니다.
문 # 32) Struts2에서 XML을 사용하여 출력 페이지를 표시하는 구문을 작성 하시겠습니까?
답변 : 여기 Struts2에서 사용자는 아래와 같이 XML 파일을 선언 할 수 있습니다.
output.jsp error.jsp
문 # 33) 인터셉터가 따르는 디자인 패턴은 무엇입니까?
대답: 인터셉터는 인터 셉팅 필터를 기반으로하는 디자인 패턴을 따릅니다.
Q # 34) Struts2에서 플러그인 태그는 어디에 있습니까? 플러그인 태그의 기능은 무엇입니까?
대답: 플러그인 태그는 struct-config.xml에 있으며 모든 프롬프트 및 오류 메시지가있는 특성 파일이있는 위치를 사용자에게 알리는 데 사용됩니다.
Q # 35) Struts Framework의 단점은 무엇입니까?
답변 : Struts Framework의 몇 가지 단점은 다음과 같습니다.
- 하나의 서블릿 컨트롤러 만 사용됩니다.
- 적절한 문서가 없습니다.
- 투명도가 꽉 차 있지 않습니다.
- 접근 방식은 유연하지 않습니다.
- 배울 것이 많이 있습니다.
결론
이 유익한 기사에서 Struts Framework에 대해 많은 것을 배웠습니다. Struts Framework가 무엇인지 보았습니다. Struts 프레임 워크의 흐름, Struts의 필요성, 다른 프레임 워크에 비해 Struts의 장점, Struts 아키텍처 및 컴포넌트, 클래스 및 구성 파일.
또한 인터셉터, 액션 컨텍스트, OGNL, 액션 호출, 라이프 사이클 메소드, 다양한 유형의 태그, Struts의 예외 처리 등의 개념을 탐색했습니다.
이 기사가 Struts 개념을 쉽게 이해하는 데 도움이 되었기를 바랍니다. 이 유익한 기사를 통해 Struts에 대한 질문에 자신있게 답변 할 수 있습니다.
추천 도서
- 2021 년 인터뷰를 클리어하기위한 20 가지 선택적 QA 인터뷰 질문
- 25 Best Agile Testing 인터뷰 질문 및 답변
- 25 개 이상의 가장 인기있는 ADO.NET 인터뷰 질문 및 답변
- 25+ Top Spring MVC 인터뷰 질문 및 답변
- 2021 년에 가장 중요한 30 가지 PL / SQL 인터뷰 질문 및 답변
- 30 가지 주요 HTML 인터뷰 질문 및 답변 (2021 목록)
- 30 개 이상의 스크럼 인터뷰 질문 및 답변 (2021 목록)
- 31 최고의 데이터베이스 테스트 인터뷰 질문 및 답변
- 48 Top AngularJS 인터뷰 질문 및 답변 (2021 목록)