配置的目錄及lib如下:
Struts2的配置文件struts.xml基本上置於classes下
以下為一個簡單的配置:
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<default-action-ref name="index" />
<global-results>
<result name="error">/error.jsp</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception"
result="error" />
</global-exception-mappings>
<action name="loginAction" class="user.action.UserLoginAction" method="login">
<result name="success">/success.jsp</result>
<result name="input">/index.jsp</result>
</action>
</package>
</struts>
從上到下依序介紹,
struts.devMode 讓你debug時可以隨時重新deploy
struts-default 是一個struts2已經設定好的攔截器及流程,通常都是繼承
default-action-ref 預設的action名稱
global-results 所有的result傳回error時,都會進入/error.jsp
global-exception-mappings 同上,所有出現的Exception都會轉到這
action name 頁面呼叫的名稱
action class 該Action的位置
result name 執行完回傳的字串,並跳轉入該頁面
下面用一個簡單的登入範例顯示:
index.jsp
<html>
<head>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<s:form name="login" action="loginAction" >
<s:textfield name="account" label="account" />
<s:password name="password" label="password" />
<tr>
<td> </td>
<td><s:submit value="login" theme="simple" />
<s:reset value="reset" theme="simple" /></td>
</tr>
</s:form>
</body>
</html>
success.jsp
<html> <head> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Insert title here</title> </head> <body> <s:form > <tr> <th>account</th> <th>password</th> </tr> <tr> <td><s:property value="account" /></td> <td><s:property value="password" /></td> </tr> </s:form> </body> </html>
UserLoginAction.java
package user.action;
import com.opensymphony.xwork2.ActionSupport;
public class UserLoginAction extends ActionSupport{
private String account;
private String password;
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String login(){
return "success";
}
}


請問有範例可以提供嗎?
回覆刪除謝謝唷