nello 发表于 2013-2-6 10:59:58

struts1.x实现

<div class="Section0" style="">Struts1.x的简单实现配置:

web.xml(自动生成未修改)

<?xmlversion="1.0"encoding="UTF-8"?>

<web-appxmlns="http://java.sun.com/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"version="2.5"xsi:schemaLocation="http://java.sun.com/xml/ns/javaeehttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>debug</param-name>

<param-value>3</param-value>

</init-param>

<init-param>

<param-name>detail</param-name>

<param-value>3</param-value>

</init-param>

<load-on-startup>0</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

</web-app>





struts-config.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<!DOCTYPEstruts-configPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration1.2//EN""http://struts.apache.org/dtds/struts-config_1_2.dtd">



<struts-config>

<data-sources/>

<form-beans>

<form-beanname="loginForm"type="com.yang.struts.form.LoginForm"/>



</form-beans>



<global-exceptions/>

<global-forwards/>

<action-mappings>

<action

attribute="loginForm"//对应的form

input="/index.jsp"

name="loginForm"

path="/login"//访问路径

scope="request"

type="com.yang.action.LoginAction">

<forwardname="fail"path="/index.jsp"/>

<forwardname="success"path="/success.jsp"/>

</action>



</action-mappings>

<message-resourcesparameter="com.yang.struts.ApplicationResources"/>

</struts-config>



相关的form:验证在form中实现

/*

*GeneratedbyMyEclipseStruts

*Templatepath:templates/java/JavaClass.vtl

*/

packagecom.yang.struts.form;



importjavax.servlet.http.HttpServletRequest;

importorg.apache.struts.action.ActionErrors;

importorg.apache.struts.action.ActionForm;

importorg.apache.struts.action.ActionMapping;



/**

*MyEclipseStruts

*Creationdate:05-19-2008

*

*XDocletdefinition:

*@struts.formname="loginForm"

*/

publicclassLoginFormextendsActionForm{

/*

*Generatedfields

*/



/**passwordproperty*/

privateStringpassword;



/**ageproperty*/

privateintage;



/**nameproperty*/

privateStringname;



/*

*GeneratedMethods

*/



/**

*Methodvalidate

*@parammapping

*@paramrequest

*@returnActionErrors

*/

publicActionErrorsvalidate(ActionMappingmapping,

HttpServletRequestrequest){

//TODOAuto-generatedmethodstub

returnnull;

}



/**

*Methodreset

*@parammapping

*@paramrequest

*/

publicvoidreset(ActionMappingmapping,HttpServletRequestrequest){

//TODOAuto-generatedmethodstub

}





publicStringgetPassword(){

returnpassword;

}





publicvoidsetPassword(Stringpassword){

this.password=password;

}





publicintgetAge(){

returnage;

}





publicvoidsetAge(intage){

this.age=age;

}





publicStringgetName(){

returnname;

}





publicvoidsetName(Stringname){

this.name=name;

}

}

相关的action

packagecom.yang.action;



importjavax.servlet.http.HttpServletRequest;

importjavax.servlet.http.HttpServletResponse;



importorg.apache.struts.action.Action;

importorg.apache.struts.action.ActionForm;

importorg.apache.struts.action.ActionForward;

importorg.apache.struts.action.ActionMapping;



importcom.yang.struts.form.LoginForm;

/*中间报Noactioninstanceforpath/logincouldbecreated的错误,把

loginAction改为了LoginAction就可以了,可能是要求LoginAction与LoginForm的名字要一致



*struts1.x必须继承Action

*/

publicclassLoginActionextendsAction{



@Override

publicActionForwardexecute(ActionMappingmapping,ActionFormform,

HttpServletRequestarg2,HttpServletResponsearg3)throwsException{

LoginFormlogin=(LoginForm)form;

ActionForwardforward=newActionForward();

intage=login.getAge();

if(age>18){

forward=mapping.findForward("success");

}

else{

forward=mapping.findForward("fail");

}

returnforward;

}



}

页面:index.jsp


<%@page<span style="color: rgb(127, 0, 127); font-size: 10.5pt; font-family: 'Courier New';">langu
页: [1]
查看完整版本: struts1.x实现