今天在QQ技术群上被一个Struts新手缠上了,这可能是今年最后在技术群上回答问题,所以给他详细的讲解了一下基本的Struts。下面作简单的总结如下,希望对别人有所帮助。
Struts的实现思想是:通过配置文件把请求页面,处理程序的JavaBean,显示的页面联系起来。
处理业务的javaBean包含两部分:第一个是FROM,描述请求参数的对象,可以用DynaActionForm来配置<form-beans>为动态的FORM就可以代替了.第二个是action它封装了业务的处理,然后通过mapping.findForward("")方法中名在配置文件中找请求后的显示的页面;通过request.setAttribute("")来设置显示页面的内容。
显示页面就是通过request.getAttribute("")来获得显示的内容。
请求页面中通过对action="/dd"设置与配置文件对应即可。
下面重点看配置文件(struts-config.xml):
</form-bean>
</form-beans><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="sumbitForm" type="com.biti.struts.form.SumbitForm" />//通过已有的from来实现
<form-bean name="logonForm" type="org.apache.struts.action.DynaActionForm"> <form-property name="username" type="java.lang.String" /> <form-property name="password" type="java.lang.String" /> <form-property name="logonType" type="java.lang.String" /></form-bean>//选择动态的form,需要配置访问参数
</form-beans>
<global-exceptions />
<global-forwards />//每一个请求都转发给这个文件
<action-mappings>
<action attribute="sumbitForm"//处理的from
input="/form/submit.jsp"//请求页面的文件
name="sumbitForm"//处理的from
path="/sumbit"//请求的路径
scope="request"//表示请求
validate="true"
type="com.biti.struts.action.SumbitAction" //处理请求页面的action的struts中的action(JavaBean)
>
<forward name="Wellcome" path="/form/Wellcome.jsp"/>//当action中mapping.findForward("Wellcome")时,则显示页面为Wellcome.jsp
<forward name="failure" path="/form/failure.jsp"/>//当action中mapping.findForward("failure")时,则显示页面为failure.jsp
</action>
</action-mappings>
<message-resources parameter="com.biti.struts.ApplicationResources" />//Struts的有关配置
</struts-config>