<? XML 버전 = "1.0" "GBK"를 인코딩 =?> <프로젝트 이름 = "스트럿"BASEDIR = "를." 기본 = ""> <속성 명 = "DIST"값 = "클래스"/> <속성 명 = "SRC"값 = "SRC"/> <경로 ID = "클래스 경로"> <세트 DIR = "LIB"> <= 이름을 포함 "*. 항아리"/> </ 세트> <pathelement 경로 = "$ {DIST}"/> </ 경로> <대상 이름 = "컴파일"설명 = "컴파일 모든 소스 코드"> <삭제 DIR = "$ {DIST}"/> <MKDIR DIR = "$ {DIST}"/> <복사 todir = "$ {DIST}"> <파일 세트 DIR = "$ {SRC}"> < "** / *. 자바"= 이름을 제외 /> </ 세트> </ 복사> <javac의 DESTDIR = "클래스"디버그 = "true"를 includeantruntime = "예" 중단 = "false"를 최적화 = "false"를 failonerror = "진정한"> <SRC 경로 = "$ {SRC}"/> <클래스 경로 REFID = "클래스 경로"/> </ javac의> </ 타겟> </ 프로젝트>
<? XML 버전 = "1.0" "GBK"를 인코딩 =?> <웹 응용 프로그램의 xmlns = "http://xmlns.jcp.org/xml/ns/javaee" XMLNS : XSI = "http://www.w3.org/2001/XMLSchema-instance" XSI :의 schemaLocation = "HTTP : //xmlns.jcp.org/xml/ns/javaee HTTP : // xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd "버전 ="3.1 "> <! - 필터 스트럿츠 2의 핵심을 정의 -> <필터> <필터 이름> struts2 </ 필터 이름> <필터 - 클래스 > org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </ 필터 - 클래스 > </ 필터> <! - 핵심 필터 2 절편 모든 요청 스트럿츠하자 -> <필터 매핑> <필터 이름> struts2 </ 필터 이름> <URL 패턴> / * </ URL 패턴> </ 필터 매핑> </ 웹 응용 프로그램>
<? XML 버전 = "1.0" "GBK"를 인코딩 =?> <! DOCTYPE 스트럿 PUBLIC "- // 아파치 소프트웨어 재단 // DTD Struts의 구성 2.3 // EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <스트럿> < 패키지 이름은 = "리는" 확장 "스트럿 - 기본"=> <작업 이름 = "로그인" 클래스 = "org.crazyit.app.action.LoginAction"> /WEB-INF/content/welcome.jsp에는 <result> </ result>을 <결과 NAME = "오류"> / WEB-INF / 콘텐츠 / 위해 welcome.jsp </ 결과> </ 동작> <작업 이름 = "*"> <결과> / WEB-INF / 콘텐츠 / {1} .jsp를 </ 결과> </ 동작> </ 패키지 > </ 스트럿>
# 필요성 org.crazyit.app.domain.User의 유형을 지정합니다
# 클래스 형 변환을 사용하여 수행 UserConverter
org.crazyit.app.domain.User = org.crazyit.app.converter.UserConverter
<% - 웹 사이트 : <A HREF = "http://www.crazyit.org"> 미친 리그 자바 </a>에 저자 yeeku.H.lee kongyeeku @ 163 .COM 이는 버전 1.0 암스테르담 저작권합니다 (C), 20012016 , yeekuHLee 이 프로그램은되어 보호 저작권법에 의해. 프로그램 이름 : 데이트: - %> <% @ 페이지의 contentType = "text / html과; 문자셋 = GBK"언어 = "자바"하여 ErrorPage = ""%> <태그 라이브러리 % @ 접두사 = "S"URI = "/ 스트럿 - 태그"%> <DOCTYPE html로의 PUBLIC! "- // W3C // DTD XHTML 1.0 과도 // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML의 xmlns = "http://www.w3.org/1999/xhtml '> <head> <TITLE> 스트럿 기반 형 컨버터 2 </ TITLE> </ head> <body> <H3> 변환기 스트럿 2 </ H3> 유형에 따라 <S : 양식 액션 = "로그인"> <S : 텍스트 필드 이름 = "사용자"라벨 = "用户"/> <TR> <TD 열 병합 = "2"> <S : 값을 제출할 = "转换」주제 ="단순 "/> <S : 리셋 값 = "重 填」주제 ="간단한 "/> </ TD> </ TR> </ s : 형태> </ body> </ HTML>
<% - 웹 사이트 : <A HREF = "http://www.crazyit.org"> 미친 리그 자바 </a>에 저자 yeeku.H.lee kongyeeku @ 163 .COM 이는 버전 1.0 암스테르담 저작권합니다 (C), 20012016 , yeekuHLee 이 프로그램은되어 보호 저작권법에 의해. 프로그램 이름 : 데이트: - %> <% @ 페이지의 contentType = "text / html과; 문자셋 = GBK"언어 = "자바"하여 ErrorPage = ""%> <태그 라이브러리 % @ 접두사 = "S"URI = "/ 스트럿 - 태그"%> <DOCTYPE html로의 PUBLIC! "- // W3C // DTD XHTML 1.0 과도 // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML의 xmlns = "http://www.w3.org/1999/xhtml '> <head> <제목> 변환 </ 제목> </ head> <body> <S : actionmessage /> 用户名为: <S : 속성 값 = "user.name"/> <BR/> 密码为: <S : 속성 값 = "user.pass"/> <BR/> </ body> </ HTML>
<? XML 버전 = "1.0" "GBK"를 인코딩 =?> <! DOCTYPE 스트럿 PUBLIC "- // 아파치 소프트웨어 재단 // DTD Struts의 구성 2.3 // EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <스트럿> < 패키지 이름은 = "리는" 확장 "스트럿 - 기본"=> <작업 이름 = "로그인" 클래스 = "org.crazyit.app.action.LoginAction"> /WEB-INF/content/welcome.jsp에는 <result> </ result>을 <결과 NAME = "오류"> / WEB-INF / 콘텐츠 / 위해 welcome.jsp </ 결과> </ 동작> <작업 이름 = "*"> <결과> / WEB-INF / 콘텐츠 / {1} .jsp를 </ 결과> </ 동작> </ 패키지 > </ 스트럿>
# 필요성 org.crazyit.app.domain.User의 유형을 지정합니다
# 클래스 형 변환을 사용하여 수행 UserConverter
org.crazyit.app.domain.User = org.crazyit.app.converter.UserConverter
패키지 org.crazyit.app.action을; 수입 com.opensymphony.xwork2.ActionSupport; 가져 org.crazyit.app.domain *. ; / ** * 설명 : * <BR/>의 웹 사이트 : <a href=" http://www.crazyit.org "> 미친 자바 리그 </a>를 * <BR/> 저작권 (C) 2001년부터 2016년까지, Yeeku.H.Lee * <BR/>이 프로그램은 저작권법에 의해 보호됩니다. * 프로그램 이름 <BR/> : * <BR/> 날짜 : * 저자 YeekuHLee kongyeeku163com * @version 1.0 * / 공용 클래스 LoginAction는 확장 ActionSupport를을 { 개인 사용자의 사용자; // 사용자의 세터와 게터 방법 공공 무효 SETUSER (사용자 사용자) { 이 .user = 사용자; } 공공 사용자 인 getUser () { 반환 이 .user을; } 공공 문자열은 실행 () 던져 예외 { 경우 (인 getUser (). getName ()가. 동일 ( "crazyit.org" ) && 인 getUser (). getPass는 (). 동일 ( "leegang" )) { addActionMessage ( "로그인 성공!" ); 반환 성공; } addActionMessage는 ( "로그인 실패 !!" ); 반환 오류; } }
패키지 org.crazyit.app.converter; 수입 java.util.Map; 수입 org.apache.struts2.util.StrutsTypeConverter; 가져 org.crazyit.app.domain *. ; / ** * 설명 : * <BR/>의 웹 사이트 : <a href=" http://www.crazyit.org "> 미친 자바 리그 </a>를 * <BR/> 저작권 (C) 2001년부터 2016년까지, Yeeku.H.Lee * <BR/>이 프로그램은 저작권법에 의해 보호됩니다. * 프로그램 이름 <BR/> : * <BR/> 날짜 : * 저자 YeekuHLee kongyeeku163com * @version 1.0 * / 공용 클래스 UserConverter는 확장 StrutsTypeConverter을 { // 타입의 복합 방식으로 변환하는 문자열 유형을 달성 공공의 개체 ConvertFromString (상황에 맞는지도 문자열 [] 값 클래스 toClass) { // 사용자 인스턴스의 생성 사용자 사용자 = 새로운 새 , 사용자 () // 첫 번째 배열 요소 처리 요구 파라미터 배열 // 두 문자열로하여 콤마 문자열을 문자열 [] userValues = 값 [ 0] .split ( "," ); // 사용자 할당을위한 예시적인 user.setName (userValues [0 ]); user.setPass ([userValues . 1 ]) // 반환 값은 사용자의 인스턴스를 변환 반환 사용자; } // 구현 유형 문자열의 방법의 복합 형으로 변환합니다 공공 문자열 convertToString (지도 컨텍스트, 개체 O) { // 이 값은 사용자 인스턴스 캐스트로 변환하는 사용자 = 사용자 (사용자) O 반환 "," "<"+ user.getName () + user.getPass + () + ">" ; } }
패키지 org.crazyit.app.domain; / ** * 설명 : * <BR/>의 웹 사이트 : <a href=" http://www.crazyit.org "> 미친 자바 리그 </a>를 * <BR/> 저작권 (C) 2001년부터 2016년까지, Yeeku.H.Lee * <BR/>이 프로그램은 저작권법에 의해 보호됩니다. * 프로그램 이름 <BR/> : * <BR/> 날짜 : * 저자 YeekuHLee kongyeeku163com * @version 1.0 * / 공용 클래스 사용자 { 개인 문자열 이름; 개인 문자열 패스; // 세터와의 getter 메소드 이름 공공 무효 에서는 setName (문자열 이름) { 이 .name을 = 이름; } 공공 문자열 getName () { 반환 이 .name을을; } // 세터와 게터 방법은 통과 공공 무효 SETPASS (문자열의 패스를) { 이 .pass = 선택된 전달; } 공공 문자열 getPass () { 반환 이 .pass을; } }