SSH 프로젝트에서는 때로는 한 행동에서 다른 행동으로 점프해야합니다. 행동 사이의 점프를 실현하는 두 가지 방법이 있습니다. 하나는 체인이고 다른 하나는 리디렉션입니다. 이 두 가지 방법의 차이점은 체인이 서버에서 점프하고 있으며, 이는 다른 동작간에 데이터 공유를 실현할 수 있다는 것입니다. 리디렉션이 클라이언트에서 점프하고 있습니다.
체인을 사용하여 매개 변수 값을 다른 동작 사이에 전달하면이 기능을 Alias 인터셉터를 통해 구현할 수 있습니다.
1. 필터 클래스를 지정합니다
web.xml에서 다음 인터셉터를 설정하십시오.
<filter> <filter-name> struts2 </filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsprepareAndexecuteFilter </filter-class> </filter> <filter-mapping> <filter-name> struts2 </filter-name> <url-panttern>/*/url-patn> </필터 매핑>
2. 매개 변수 값을 전달합니다
struts.xml 파일에서 첫 번째 호출 조치를 정의하십시오.
<action name = "xxx"> <result name = "success"> </result> <result name = "input"type = "chain"> <param name = "actionname"> input_error </param> </result> </action>
다음 두 번째 조치를 정의합니다.
<action name = "input_error"> <param name = "aliases">#{ 'error_status': 'status', 'error_desc': 'desc'} </param> </action> 첫 번째 조치가 입력을 반환하면 두 번째 작업으로 이동합니다. 이 시점에서, 첫 번째 동작의 error_status 및 error_desc 값은 각각 두 번째 조치의 상태 및 desc로 전달되므로 매개 변수 값의 전달을 실현합니다. 매개 변수 값을 전달하는 변수에는 getter () 및 setter () 메소드가 있어야합니다. 그렇지 않으면 과거에 전달 된 값은 무일하게입니다.
위의 것은 편집자가 당신에게 소개 한 Javaweb 개발에서 별명 인터셉터를 사용하는 것입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!