应用 Struts 实例 开发简单加法器

08/16/2010

一.使用Struts开发步骤

  • 添加Struts支持
  • 开发业务逻辑类(模型,Model)
  • 开发JSP页面
  • 为表单编写 ActionForm,用以保存表单中的数据
  • 创建Action(子控制器),用以处理业务流程
  • 修改配置文件struts-config.xml,配置ActionForm和Action
  • 调试运行


二.Struts框架图例

  1. Struts 框架运行过程
  2. struts

  3. Struts Web应用运行过程
  4. strutsrun1

  5. Struts 加法器 运行过程
  6. strutsadd

三.Struts框架开发简单加法器

  1. 新建工程
  2. 添加Struts支持
  3. addstrutscap

  4. 开发业务逻辑类(模型,Model)
  5. package net.royakon.model;
    
    public class CalcModel {
    	public double add(double x,double y) {
    		return x+y;
    	}
    }
  6. 开发JSP页面
  7. <!-- index.jsp -->
    <%@ page language="java" pageEncoding="gb2312"%>
    <form action="addAction.do" method="post">
    	<table>
    		<tr>
    			<td>num1</td>
    			<td><input type="text" name="num1" /></td>
    		</tr>
    		<tr>
    			<td>num2</td>
    			<td><input type="text" name="num2" /></td>
    		</tr>
    		<tr>
    			<td colspan="2"><input type="submit" value=" + "/></td>
    		</tr>
    	</table>
    </form>
    
    <!-- result.jsp -->
    <%@ page language="java" pageEncoding="gb2312"%>
    <h1>${result}</h1>
  8. 为表单编写 ActionForm,用以保存表单中的数据
  9. addactionform

  10. 创建Action(子控制器),用以处理业务流程
  11. addaction1
    addaction2

  12. 编辑 AddAction.java 关联业务模型实现加法器功能
  13. 	public ActionForward execute(ActionMapping mapping, ActionForm form,
    			HttpServletRequest request, HttpServletResponse response) {
    		AddForm addForm = (AddForm) form;
                              //从 表单Bean 中取得页面数据
    		double num1 = addForm.getNum1();
    		double num2 = addForm.getNum2();
                              //调用业务模型实现加法功能
    		CalcModel calc = new CalcModel();
    		double result = calc.add(num1,num2);
                              //将结果保存至 request 作用域 用于在结果页中显示结果
    		request.setAttribute("result", result);
                              //利用跳转别名 实现跳转至 结果页
    		return mapping.findForward("result");
    	}
  14. 修改配置文件struts-config.xml,配置ActionForm和Action
  15. 调试运行