该项目是我自己写的, 该项目知识点如下:
该项目是多个表单一步步提交,在最后页面展示各个页面输入的信息;
1.多个表单应该对应多个ActionForm,此处用一个ActionForm包含了各个表单的属性
2.每个表单(step1.jsp,step2.jsp,step3.jsp,finish.jsp)的提交,都对应一个Action来处理,
不过此处没有写Action类,只是写了多个action标签,而具体的转向由forward属性来负责;
3.多个提交(step1.jsp,step2.jsp,step3.jsp,finish.jsp)对应的Action共用一个ActionForm(StepActionForm.java)
4.如果在一个页面想得到多个action提交处理的数据,需要在各个action标签中设置:scope="session"
5.ActionForm接收数据时会出现乱码,采用过滤器来处理乱码问题
==========过滤器类SetCharacterEncodingFilter.java=========
public class SetCharacterEncodingFilter implements Filter {
private String encoding;
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
request.setCharacterEncoding(this.encoding);
chain.doFilter(request,response);
}
public void init(FilterConfig filterConfig) throws ServletException {
this.encoding=filterConfig.getInitParameter("encoding");
}
}
============web.xml=============
<filter>
<filter-name>SetCharacterEncodingFilter</filter-name>
<filter-class>com.wlh.servlet.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>SetCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>