Struts 2 - result 설정 의 다양한 보기 퍼 가기 형식
1. dispatcher: 서버 쪽 에서 페이지 로 이동 합 니 다. 보통 JSP, 기본 형식 을 처리 합 니 다.
2. redirect: 클 라 이언 트 (브 라 우 저) 가 페이지 로 다시 설정 합 니 다. 다음 예 를 들 어 redirect 보기 리 트 윗 을 설명 합 니 다. 주의해 야 할 것 은 브 라 우 저가 방향 을 바 꾸 기 때문에 웹 콘 텐 츠 아래 에 리 트 윗 페이지 를 두 어야 합 니 다. 그렇지 않 으 면 접근 할 수 없습니다.
다음은 struts. xml 프로필 입 니 다:
<package name="struts" namespace="/test" extends="struts-default">
<action name="redirect" class="com.struts.action.RedirectAction" method="execute">
<result name="success" type="redirect">/redirect.jsp?message=${message }</result>
</action>
</package>
다음은 RedirectAction:
package com.struts.action;
public class RedirectAction {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String execute() {
this.message = "This is a redirect test";
return "success";
}
}
다음은 방향 을 바 꿔 야 할 redirect. jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>redirect </title>
</head>
<body>
message : ${param.message }
</body>
</html>
서버 에 항목 배치, 주소 표시 줄 에 입력 http://localhost:8080/strutsdemo/test/redirect
redirect. jsp 메시지 표시: 이것 은 redirect test
브 라 우 저 주소 표시 줄 변화 결과: http://localhost:8080/strutsdemo/redirect.jsp?message=This%20is%20a%20redirect%20test
주: el 표현 식 으로 action 의 속성 값 을 가 져 올 수 있 습 니 다.
3. redirectAction: 서버 에서 지정 한 action 으로 이동 합 니 다. 다음 예 를 들 어 redirectAction 보기 의 퍼 가기 에 대해 설명 합 니 다.
다음은 struts. xml 프로필 입 니 다:
<package name="struts" namespace="/test" extends="struts-default">
<action name="testAction" class="com.struts.action.RedirectActionAction" method="execute">
<result name="success" type="dispatcher">/WEB-INF/pages/redirectAction.jsp?message=${message }</result>
</action>
<action name="redirectAction">
<result name="success" type="redirectAction">testAction</result>
</action>
</package>
다음은 Redirect Action Action:
package com.struts.action;
public class RedirectActionAction {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String execute() {
this.message = "This is a redirectAction test";
return "success";
}
}
다음은 방향 을 바 꿔 야 할 redirectAction. jsp 입 니 다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>redirectAction </title>
</head>
<body>
message : ${param.message }
</body>
</html>
서버 에 프로젝트 배치, 주소 표시 줄 에 입력 http://localhost:8080/strutsdemo/test/redirect Action
redirect. jsp 디 스 플레이 메시지: This is a redirect 액 션 테스트
브 라 우 저 주소 표시 줄 변화 결과: http://localhost:8080/strutsdemo/test/testAction.action
이상 은 같은 네 임 스페이스 에 있 는 action 으로 재 설정 한 경우 입 니 다. 다른 네 임 스페이스 에 있 는 action 으로 재 설정 하려 면 Struts. xml 의 설정 은 다음 과 같 습 니 다.
<struts>
<package name="struts" namespace="/test" extends="struts-default">
<action name="testAction" class="com.struts.action.RedirectActionAction" method="execute">
<result name="success" type="dispatcher">/WEB-INF/pages/redirectAction.jsp?message=${message }</result>
</action>
</package>
<package name="other" namespace="/test2" extends="struts-default">
<action name="redirectAction">
<result name="success" type="redirectAction">
<param name="namespace">/test</param>
<param name="actionName">testAction</param>
</result>
</action>
</package>
</struts>
인 스 턴 스 절 차 를 참고 하여 테스트 결 과 는 같 습 니 다.
4. plainText: 원본 파일 내용 표시
프로필:
<action name="plainText" class="com.struts.action.PlainTextAction" method="execute">
<result name="success" type="plainText">/WEB-INF/pages/plainText.jsp</result>
</action>
다음은 PlainTextAction:
package com.struts.action;
public class PlainTextAction {
public String execute() {
return "success";
}
}
다음은 plainText. jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>plainText </title>
</head>
<body>
<%= new Date(); %>
</body>
</html>
테스트 결과: 예 를 들 어 plainText. jsp
중국어 난 코드 문 제 를 해결 하려 면 action 은 다음 과 같 습 니 다.
<action name="plainText">
<result type="plainText">
<param name="location">/WEB-INF/pages/plainText.jsp</param>
<param name="charSet">UTF-8</param>
</result>
</action>
5. 공용 보기 설정:
프로필:
<struts>
<package name="global" namespace="/global" extends="struts-default">
<global-results>
<result name="success">/WEB-INF/pages/global.jsp</result>
</global-results>
</package>
<package name="struts" namespace="/test" extends="global">
<action name="globalResultAction" class="com.struts.action.GlobalResultAction" method="execute">
<param name="namespace">/global</param>
</action>
</package>
</struts>
설정 을 통 해 알 수 있 듯 이 설정 파일 의 package 도 우리 자바 의 가방 처럼 계승 할 수 있 습 니 다.
GlobalResultAction:
package com.struts.action;
public class GlobalResultAction {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public String execute() {
this.message = "This is a globalResult test";
return "success";
}
}
global.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>globalResult </title>
</head>
<body>
message : ${message }
</body>
</html>
브 라 우 저 주소 표시 줄 에 입력: http://localhost:8080/strutsdemo/test/globalResultAction 페이지 표시: message: This is a global Result test
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JSP| EL (Experession Language)텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.