Struts2之Helloword

代碼

package com.helloworld.struts.action;

import com.opensymphony.xwork2.ActionSupport;

public class HelloAction extends ActionSupport{
	private String userName;//保存請求參數用戶姓名
	private String reslutStr;//存放處理結果

	/** 重載ActionSupport類的execute方法 */
	public String execute(){
		reslutStr="這是業務控制器HelloAction處理的結果內容!";
		return SUCCESS;
	}
	/** 手動進行表單驗證 */
	public void validate(){
		//用戶姓名不能爲空
		if(userName==null||userName.trim().length()<1){
			addFieldError("userName",getText("username.error"));
		}
	}

	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getReslutStr() {
		return reslutStr;
	}
	public void setReslutStr(String reslutStr) {
		this.reslutStr = reslutStr;
	}	
}

 

 

struts.xml

 

<?xml version="1.0" encoding="gbk"?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
	<!-- 設置Web應用的默認編碼集爲gbk -->
	<constant name="struts.i18n.encoding" value="gbk"/>
	<!-- 設置Web應用的默認Locale爲zh_CN -->
	<constant name="struts.locale" value="zh_CN" />
	<!-- 設置Struts2應用的國際化資源文件,多個文件中間可用逗號分隔 -->
	<constant name="struts.custom.i18n.resources" value="messageResource"/>
	<!-- 設置Struts2應用是否處於開發模式,通常在開發調試階段設爲true,正式上線後可設爲false -->
	<constant name="struts.devMode" value="true" />
	<!-- 設置Struts2的默認主題爲simple -->
	<constant name="struts.ui.theme" value="simple" />
	<!-- 定義一個名爲hello的包,繼承Struts2的默認包 -->
    <package name="hello" extends="struts-default">
		<!-- 配置業務控制器HelloAction映射 -->
		<action name="sayhello" class="com.helloworld.struts.action.HelloAction">
			<!-- 定義名爲success的局部result,其結果類型爲默認的dispatcher -->
			<result>/welcome.jsp</result>
			<!-- 定義名爲input的局部result,其結果類型爲默認的dispatcher -->
			<result name="input">/index.jsp</result>
		</action>
    </package>
</struts>



web.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<!-- 配置struts2的核心控制器StrutsPrepareAndExecuteFilter -->
    <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-pattern>/*</url-pattern>
	</filter-mapping>
	<welcome-file-list>
	  <welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>


 

index.jsp

 

<%@ page contentType="text/html; charset=gbk"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
  <head>
    <title><s:text name="title.text"/></title>
  </head>  
  <body>
    <s:form action="sayhello">
    	<s:text name="label.name"/>
    	<s:textfield name="userName" size="22"/>
    	<s:submit key="label.submit"/> 
    	<s:reset key="label.reset"/>
    </s:form>
	<s:if test="hasFieldErrors()">
		<s:fielderror/>
	</s:if> 
  </body>
</html>


welcome.jsp

 

<%@ page contentType="text/html; charset=gbk"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
  <head>
    <title><s:text name="title.text"/></title>
  </head>  
  <body>
  	${userName},<s:text name="label.welcome"/><br/>
  	${reslutStr}
  </body>
</html>


發佈了81 篇原創文章 · 獲贊 30 · 訪問量 28萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章