<?xml version = "1.0"エンコード= "GBK"?> <プロジェクト名= "支柱"のbasedir = "" デフォルト = ""> <プロパティ名= "DIST"値= "クラス" /> <プロパティ名= "SRC"値= "SRC" /> <パスのid = "クラスパス"> <ファイルセットDIR = "LIB"> < = "*。JAR" />名前を含む </ファイルセット> <pathelementパス= "$ {DIST}" /> </パス> <ターゲット名= "コンパイル" DESCRIPTION = "コンパイルすべてのソースコード"> <削除DIR = "$ {DIST}" /> <MKDIR DIR =」 <コピー/> <javacのDESTDIR = "クラス"デバッグ= "true"をincludeantruntime = "yes"を 廃止 = "false"を最適化= "false"をfailonerror = "真の"> <SRCパス= "$ {SRC}" /> <クラスパスREFID = "クラスパス" /> </ javacの> </ target>を </プロジェクト>
<?xmlのバージョン= "1.0"エンコード= "GBK"> の<web-appのxmlns = "http://xmlns.jcp.org/xml/ns/javaee" のxmlns:XSI = "のhttp://www.w3 .ORG / 2001 / XMLスキーマ・インスタンス" のxsi:schemaLocationの =" http://xmlns.jcp.org/xml/ns/javaee のhttp:// xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd "バージョン=" 3.1" > <! -定义のStruts 2的核心フィルタ- > <フィルタ> <フィルタ名> Struts2の</フィルタ名> <フィルタ- クラス > org.apache.struts2.dispatcher.ng。 filter.StrutsPrepareAndExecuteFilter </フィルタ- クラス > </フィルタ> <! -让のStruts 2的核心フィルター拦截所有请求- > <のfilter-mapping> <フィルタ名> Struts2の</フィルタ名> の<url-pattern> / * </のurl-pattern> </のfilter-mapping> </ web-app>の
<% - 网站: <のhref = "http://www.crazyit.org">疯狂のJava联盟</a>の 著者yeeku.H.lee kongyeeku @ 163 .COM バージョン 1.0 著作権(C)、 2001年から2016年、yeeku.H.Lee このプログラムはされ保護された著作権法によって。 プログラム名: 日: - %> <%@ページのcontentType = "text / htmlの;のcharset = GBK"言語= "javaの" errorPageでは= "" %> <%@ taglibの接頭辞= "S"のuri = "/ struts-タグ"%> <DOCTYPE HTML PUBLIC! " - // W3C // DTD XHTML 1.0過渡// EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htmlのxmlns = "のhttp:// WWW。 <H3>局部类型转换器</ H3> <S:フォームアクション= "ログイン"> <S:テキストフィールド名= "ユーザー"ラベル= "用户" /> <TR> <TD COLSPAN = "2"> <S :提出値= "转换"をテーマ= "シンプル" /> <S:リセット値は= "重填"をテーマ= "シンプル" /> </ TD> </ TR> </ sの:フォーム> </ BODY> < / HTML>
<% - 网站: <のhref = "http://www.crazyit.org">疯狂のJava联盟</a>の 著者yeeku.H.lee kongyeeku @ 163 .COM バージョン 1.0 著作権(C)、 2001年から2016年、yeeku.H.Lee このプログラムはされ保護された著作権法によって。 プログラム名: 日: - %> <%@ページのcontentType = "text / htmlの;のcharset = GBK"言語= "javaの" errorPageでは= "" %> <%@ taglibの接頭辞= "S"のuri = "/ struts-タグ"%> <DOCTYPE HTML PUBLIC! " - // W3C // DTD XHTML 1.0過渡// EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <htmlのxmlns = "のhttp:// WWW。 <S:actionmessage /> 用户名为: <S:プロパティ値= "user.name" /> <BR/> 密码为: <S:プロパティ値= "user.pass" /> <BR/> </ BODY > </ HTML>
<?xml version = "1.0"は"GBK"をコードします=?> <!DOCTYPEストラットPUBLIC " - // Apache Software Foundationの// DTD Strutsの設定2.3 // EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <ストラット> < パッケージ名= "リー" 拡張 "ストラットデフォルト"> = <アクション名= "ログイン" クラス = "org.crazyit.app.action.LoginAction"> <結果> /WEB-INF/content/welcome.jsp </結果> <結果名=を"エラー"> / WEB-INF /コンテンツ/ welcome.jspを</結果> </アクション> <アクション名= "*">パッケージ > </ストラット>
パッケージorg.crazyit.app.action。 輸入com.opensymphony.xwork2.ActionSupport; インポート org.crazyit.app.domain *。; / ** *内容: * <BR/>网站:<a href=" "> http://www.crazyit.org 疯狂のJava联盟</a>の * <BR/>著作権(C)、2001年から2016年、 Yeeku.H.Lee * <BR/>このプログラムは著作権法により保護されています。 *プログラム名<BR/>: * <BR/>日: * @author Yeeku.H.Lee [email protected] * @version 1.0 * / パブリック クラス LoginActionのは、拡張ActionSupport { プライベートユーザーのユーザーを、 // ユーザ的セッター和ゲッター方法 公共 ボイドSETUSER(ユーザユーザ) { この .user = ユーザー。 } パブリックユーザのgetUser() { 戻り 、この.userと、 } パブリック文字列()を実行スロー例外 { 場合(のgetUser()のgetName()。 "crazyit.org"(等しい) &&のgetUser()。GETPASS()。等号( "leegang" )) { addActionMessage(「登录成功! " ); 返すSUCCESSを。 } addActionMessage("ログインに失敗しました!!" ); 戻りERROR; } }
ユーザーの#が指定されたActionクラスUserConverterは変換タイプの完了するために必要な属性を
ユーザー = org.crazyit.app.converter.UserConverterを
パッケージorg.crazyit.app.converter; 輸入java.util.Map; 輸入ognl.DefaultTypeConverter; インポート org.crazyit.app.domain *。; / ** *内容: * <BR/>网站:<a href=" "> http://www.crazyit.org 疯狂のJava联盟</a>の * <BR/>著作権(C)、2001年から2016年、 Yeeku.H.Lee * <BR/>このプログラムは著作権法により保護されています。 *プログラム名<BR/>: * <BR/>日: * @author Yeeku.H.Lee [email protected] * @version 1。 // タイプconvertValueコンバータ方法双方向コンバータ完全上書きしなければならない 公共のオブジェクトconvertValue(マップコンテキスト 、オブジェクトの値、そのtoTypeクラス) { // 文字列型ユーザ変換することが望まれる場合 IF(そのtoType ==ユーザー。クラスは、) { // 要求パラメータは、文字列のアレイシステムである 文字列[]のparams = (文字列[])の値 // ユーザーインスタンス作成 ユーザーユーザーを= 新しい新しいユーザー(); // 最初のパラメータアレイ処理要求のみ配列要素、 // および二つの文字列の中にコンマ文字列 列[] = userValuesのparams [0] .split(「」); // ユーザーインスタンスを割り当て user.setName(userValues [0 ]); user.setPass([userValues。1 ;]) // 戻り値は、ユーザーのインスタンス変換 戻りユーザー; } そう IFを(==そのtoTypeストリングクラス) { // の値を変換する必要があります例は、ユーザにキャスト ユーザー=ユーザー(ユーザー)値; リターン "<" + user.getName()+ "" + user.getPass()+ ">" ; } 戻り NULL ; } }
パッケージorg.crazyit.app.domain; / ** *内容: * <BR/>网站:<a href=" "> http://www.crazyit.org 疯狂のJava联盟</a>の * <BR/>著作権(C)、2001年から2016年、 Yeeku.H.Lee * <BR/>このプログラムは著作権法により保護されています。 *プログラム名<BR/>: * <BR/>日: * @author Yeeku.H.Lee [email protected] * @version 1.0 * / パブリック クラスユーザー { プライベート文字列名; プライベート文字列のパス。 // 名前的セッター和ゲッター方法 公共 のボイドのsetName(文字列名) { この .nameの= 名前; } パブリック文字列のgetName() { 戻り 、この.nameのを、 } // 的セッター和ゲッター方法通過 公共 ボイドSETPASS(文字列のパス) { この .passを= 渡します。 } パブリック文字列GETPASS() { 戻り 、この.passと、 } }