struts 2.1 이틀 빠 른 입문 (첫날 오전)
첫날 오전 학습 목록:
첫째, 첫 번 째 struts 2.1 응용 개발
2. Action 설정 의 기본 값
3. 설 정 된 각종 보기 전송 유형
4. Action 속성 주입 값
5. Struts 2.1 처리 요청
개발 환경: MyEclipse + Tomcat 6. x
1. 첫 번 째 struts 2 응용 개발
1.1 Struts 2 프로그램 을 개발 하 는 데 가장 필요 한 JAR 는 다음 과 같다.
struts 2 - core - 2. x. x. jar: Struts 2 프레임 워 크 의 핵심 라 이브 러 리 xwork - core - 2. x. x. jar: XWork 라 이브 러 리, Struts 2 를 구축 합 니 다. ognl - 2.6. x. jar: 대상 그림 내 비게 이 션 언어 (Object Graph Navigation Language), struts 2 프레임 워 크 는 읽 기와 쓰기 대상 의 속성 을 통 해 freemarker - 2.3. x. jar: Struts 2 의 UI 탭 템 플 릿 은 FreeMarker 로 작 성 됩 니 다. commons - logging - 1x. x. jar: ASF 에서 만 든 로그 패키지 입 니 다. Struts 2 프레임 워 크 는 이 로그 패 키 지 를 사용 하여 Log4J 와 JDK 1.4 + 의 로그 기록 을 지원 합 니 다. commons - fileupload - 1.2.1. jar 파일 업로드 구성 요소, 2.1.6 버 전 후 이 파일 을 추가 해 야 합 니 다.
1.2. Struts 2 의 기본 설정 파일 은 struts. xml 입 니 다. 이 파일 은 WEB - INF / classes 에 저장 해 야 합 니 다. 이 파일 의 설정 템 플 릿 은 다음 과 같 습 니 다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
</struts>
지식 알림: 이 템 플 릿 은 struts - 2.1.6 \ apps \ \ struts 2 - blank - 2.1.6. war 의 공백 항목 에서 복사 할 수 있 습 니 다.
1.3. struts 2 프레임 워 크 는 Filter 를 통 해 작 동 됩 니 다.웹 xml 에서 의 설정 은 다음 과 같 습 니 다.
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
<!-- Struts 2.1.3 , FilterDispatcher
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> -->
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
지식 알림: Struts Prepare AndExecute Filter 의 init () 방법 에 서 는 클래스 경로 에서 기본 설정 파일 struts. xml 을 불 러 와 초기 화 작업 을 완료 합 니 다. 일부 초기 화 작업 은 한 번 만 하고 서버 시작 과정 에서 완 료 됩 니 다.
1.4, 첫 번 째 Struts 2 판 Hello World.
1.4.1. cn. gkit. action. HelloWorld Action 류 를 새로 만 들 었 습 니 다. 코드 는 다음 과 같 습 니 다.
public class HelloWorldAction {
private String message;
public String getMessage() {
return message;
}
//
public String execute(){
message = "struts2 HelloWorld";
return "success";
}
}
지식 알림: 이 Action 류 는 다른 종 류 를 계승 하지 않 고 간단 한 POJO 류 임 을 알 수 있 습 니 다.
1.4.2 、 action 이 struts. xml 에서 의 설정:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="test" namespace="/test" extends="struts-default">
<action name="helloworld" class="cn.gkit.action.HelloWorldAction" method="execute" >
<result name="success">/WEB-INF/jsp/helloworld.jsp</result>
</action>
</package>
</struts>
지식 알림: < package > 는 자바 패키지 와 유사 한 패 키 지 를 표시 합 니 다. 이 패 키 지 는 다른 패 키 지 를 계승 할 수 있 습 니 다. 계승 속성 은 extends. test 패 키 지 는 struts 의 기본 패키지 struts - default. struts - default 패 키 지 를 계승 합 니 다. struts - default 패 키 지 는 struts - defautl. xml 설정 파일 에 정의 되 어 있 습 니 다. struts 2 코어 패키지 루트 아래 에서 찾 을 수 있 습 니 다. namespace 속성 은 네 임 스페이스 를 표시 합 니 다.요청 경로 의 같은 부분 을 추출 할 수 있 습 니 다.helloworld 에 접근 하 는 요청 경 로 는: / struts 2.1 / test / helloworld 입 니 다. 그 중에서 struts 2.1 은 이 프로그램의 가상 디 렉 터 리 (즉 내용 경로) 를 가리 키 는 것 입 니 다. < result > 는 되 돌아 오 는 보 기 를 표시 합 니 다. 구체 적 인 설정 은 제3 장 에서 설명 합 니 다.
1.4.3 hello World. jsp 에 message 정 보 를 표시 합 니 다.
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>struts2.1 HelloWorld</title>
</head>
<body>
${message}
</body>
</html>
지식 알림: el 표현 식 으로 action 의 속성 을 추출 할 수 있 습 니 다.
2. Action 설정 (struts. xml - < action >) 의 기본 값
1 > action 에 class 속성 을 지정 하지 않 으 면 기본적으로 Action Support 입 니 다.
2 > action 에 method 속성 을 지정 하지 않 으 면 action 의 execute () 방법 을 기본 으로 실행 합 니 다. 3 > result 의 name 속성 이 지정 되 지 않 으 면 기본 값 은 success 입 니 다.
test 패키지 에 다음 action 요청 을 추가 하면
<action name="registerUI">
<result>/WEB-INF/page/register.jsp</result>
</action>
지식 알림: 방문 경로 / struts 2.1 / test / registerUI 일 때 브 라 우 저 에 되 돌아 오 는 것 은 register. jsp 페이지 입 니 다. 설정 은 struts 1. x 에 해당 합 니 다. 다음 과 같 습 니 다.
<action path="/test/regiterUI" forward="/WEB-INF/page/register.jsp"/>
3. 설 정 된 각종 보기 전송 유형
3.1、redirect
그러나 < result > 에 서 는 ${속성 명} 표현 식 을 사용 하여 action 의 속성 에 접근 할 수 있 습 니 다. 표현 식 의 속성 명 은 action 의 속성 에 대응 합 니 다.
1.4.2 의 struts. xml 프로필 의 < result > 를 다음 과 같이 변경 합 니 다.
<result type="redirect">/helloworld.jsp?message=${message}</result>
지식 알림: 이 때 helloworld. jsp 는 WebRoot 디 렉 터 리 에 두 어야 접근 할 수 있 습 니 다. struts 1. x 설정 파일 에 서 는 이 점 을 할 수 없습니다. url rewrite 를 사용 하여 url 을 다시 쓰 지 않 는 한 action 의 속성 값 을 전달 할 수 없습니다. / struts 2.1 / test / helloworld 요청 을 다시 방문 하면 브 라 우 저 주 소 는 / struts 2.1 / helloworld. jsp? message = struts2H * 20965 ° ello World 로 변 합 니 다. 여기 서 중국어 코드 문 제 를 무시 합 니 다.
3.2, plaintext: 원본 파일 내용 을 표시 합 니 다. 예 를 들 어 jsp 파일 원본 코드 를 그대로 표시 해 야 할 때 이 형식 을 사용 할 수 있 습 니 다.설정 은 다음 과 같 습 니 다:
<result name="source" type="plainText ">
<param name="location">/view.jsp</param>
<param name="charSet">UTF-8</param><!-- -->
</result>
지식 알림: 이 요청 에 접근 할 때 jsp 페이지 코드 문체 보기, 즉 jsp 페이지 코드 가 실행 되 지 않 습 니 다.
3.3 redirect Action 의 역할 은 redirect 와 유사 하 며 다른 것 은 action 으로 방향 을 바 꾸 는 것 이다.
4. Action 속성 주입 값
속성 주입 은 spring 과 유사 한 속성 주입 입 니 다. 원 리 는 같 습 니 다. 모두 반사 기술 을 통 해 xml 에 대응 하 는 값 을 대응 하 는 자바 속성 에 설정 합 니 다. 주 입 된 속성 도 대응 하 는 setter 방법 이 있어 야 합 니 다.
1. Hello World Action 류 에 setter 방법 을 추가 합 니 다.
public void setMessage(String message) {
this.message = message;
}
2. 덮어 쓰 지 않도록 execute 방법 에서 message 에 값 을 부여 하 는 코드 설명 을 삭제 합 니 다.
3. struts. xml 프로필 의 < action > 에 키 탭 < param name = "> 을 추가 하고 설정 은 다음 과 같이 변경 합 니 다.
<package name="test" namespace="/test" extends="struts-default">
<action name="helloworld" class="cn.gkit.action.HelloWorldAction" method="execute" >
<param name="message"> </param>
<result name="success">/WEB-INF/jsp/helloworld.jsp</result>
</action>
</package>
이 요청 에 접근 하면 페이지 에 표 시 된 mesage 속성 값 은: 속성 주입
5. Struts 2 처리 요청
1. Struts 2 처리 가 필요 한 요청 접 두 사 를 지정 합 니 다. 설정 파일 struts. xml 설정 에 상수 탭 < constant > 을 추가 합 니 다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.action.extension" value="do"/>
</struts>
2. 사용자 가 여러 개의 요청 접 두 사 를 지정 해 야 한다 면 여러 개의 접 두 사 이 를 영문 쉼표 로 구분 합 니 다.예:
<constant name="struts.action.extension" value="do,htm"/>
3. 상수 이름 struts. action. extension 은 default. properties 에서 찾 을 수 있 습 니 다. struts 2 의 기본 상수 값 인 default. properties 는 struts 2 핵심 가방 에 있 는 org. apache. struts 2 에서 찾 을 수 있 습 니 다.
첫날 오전 내용 이 끝났다.
오후 내용 목록 은 다음 과 같다.
6. Struts 2 의 처리 절차 와 Action 의 관리 방식
7. 동적 방법 호출 및 사용 마스크 정의 action
8. 사용자 정의 형식 변환기
9. 사용자 정의 차단기
파일 업로드
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 파일 압축 및 압축 풀기파일 의 간단 한 압축 과 압축 해 제 를 실현 하 였 다.주요 테스트 용 에는 급 하 게 쓸 수 있 는 부분 이 있 으 니 불편 한 점 이 있 으 면 아낌없이 가르쳐 주 십시오. 1. 중국어 문 제 를 해 결 했 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.