SSH框架--Struts的故事
到目前为止,我们经历了从静态页面到JSP,再到JSP+Servlet+JavaBean的学习过程,又在前面学习了Struts技术。
没有人知道宇宙是怎样开始的。有人推论... 啊,错了,跳到魔兽正史了。
纯JSP盛行的时代是乱世,那时候编写的HTML和JSP混用代码很少存活到今天。业务逻辑越来越复杂,JavaBean和Servlet开始广泛应用,这个世界里开始散发着文明的气息,事情开始变得有秩序。Struts出现的意义大致相当于《拿破仑法典》的颁发,框架的广泛使用铲除了杂乱和无序,还提供给人们各种方便。EJB王朝没落的时候,三层架构+Struts MVC开始了温和的统治,这个新的领袖虽然没有王冠(非jcp委员会) ,也没有权杖(不是jsr标准),但成为了 Java Web应用开发事实标准,得到了天下。
Struts是针对JSP+Servlet的一个MVC的解决方案。
使用开发的4个步骤:
1、给项目添加Struts支持
2、实现业务逻辑类(模型,Model)
3、添加Struts组件
开发ActionForm组件(视图组件,View)
开发Action组件(控制组件,Controller)
开发JSP页面
修改配置文件struts-config.xml,配置ActionForm和Action
4、调试运行
demo
下面我们写一个Calculator,简单练习下Struts框架:
创建项目,搭建框架,我们创建biz包
public class Calculator {public double addition(double num1,double num2) {return num1+num2;}public double subtract(double num1,double num2) {return num1-num2;}public double multiply(double num1,double num2) {return num1*num2;}public double divide(double num1,double num2) {return num1/num2;}
}
添加Struts支持:
创建结果页面,修改index页面
Welcome to out website <br><html:form action="/calc" method="post">
<input type="hidden" name="operate" />
Calculator<br/>
num1:
<input type="text" name="num1"><br/>
num2:
<input type="text" name="num2"><br/>
<button οnclick="doSubmit('doAddition')">加</button>
<button οnclick="doSubmit('doSubtract')">减</button>
<button οnclick="doSubmit('doMultiply')">×</button>
<button οnclick="doSubmit('dodDivide')">÷</button>
</html:form>
<script>function doSubmit(opr){document.forms[0].elements["operate"].value=opr;document.forms[0].submit();}
</script>
好,我们开始创建FormBean、action。
选择Formbean的基类
这里action的基类,我们选择DispatchAction,这就意味着struts-config.xml里,我们要添加属性parameter="operate",它是index页面加的隐藏域的值,这个,你懂的
好,下面要做的是修改Action:
public ActionForward doAddition(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {CalcForm calcForm = (CalcForm) form;// TODO Auto-generated method stubCalculator calculator = new Calculator();double result;result= calculator.addition(Double.parseDouble(calcForm.getNum1()), Double.parseDouble(calcForm.getNum2()));request.setAttribute("result", result);return mapping.findForward("result");}public ActionForward doSubtract(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {CalcForm calcForm = (CalcForm) form;// TODO Auto-generated method stubCalculator calculator = new Calculator();double result;result= calculator.subtract(Double.parseDouble(calcForm.getNum1()), Double.parseDouble(calcForm.getNum2()));request.setAttribute("result", result);return mapping.findForward("result");}public ActionForward doMultiply(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {CalcForm calcForm = (CalcForm) form;// TODO Auto-generated method stubCalculator calculator = new Calculator();double result;result= calculator.multiply(Double.parseDouble(calcForm.getNum1()), Double.parseDouble(calcForm.getNum2()));request.setAttribute("result", result);return mapping.findForward("result");}public ActionForward dodDivide(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) {CalcForm calcForm = (CalcForm) form;// TODO Auto-generated method stubCalculator calculator = new Calculator();double result;result= calculator.divide(Double.parseDouble(calcForm.getNum1()), Double.parseDouble(calcForm.getNum2()));request.setAttribute("result", result);return mapping.findForward("result");}
输出页面,用el表达式、jstl都行。
转载于:https://www.cnblogs.com/xsxs/archive/2010/11/28/1890098.html
SSH框架--Struts的故事相关推荐
- java ssh框架 struts spring hibernate 简介
目录 什么是SSH框架 浅谈Struts 什么是Struts Struts的核心构成 为什么使用Struts 浅谈Hibernate 什么是Hibernate Hibernate的核心构成 浅谈Spr ...
- myeclipse搭建SSH框架
搭建SSH框架 Struts+hibernater+spring架构(myeclipse) 右击,首先加入spring,加入hibernater,再加入struts2 复制jar包(把tomcat发布 ...
- SSM框架+SSH框架简介
SSM框架 Spring+SpringMVC+MyBatis Spring:Spring是一个开源框架.它的目标是是使现有的JavaEE技术更容易使用和养成良好的编程习惯.它是一个轻量级的框架,渗透了 ...
- spring+springMvc+struts的SSH框架整合
1.建立一个web项目 2.导入SSH框架所需jar包 3.配置web.xml文件 <?xml version="1.0" encoding="UTF-8" ...
- 基于SSH框架的二手物品交易网(Struts)
代码下载地址 介绍 基于SSH框架的二手物品交易网(Struts) 开发工具及环境等 支持Eclipse.IDEA.Maven 功能 用户:登录.注册.商品发布,购买的商品.留言板.我的信息.会员中心 ...
- [转载]SSH框架搭建详细图文教程
什么是SSH? SSH对应 struts spring hibernatestruts 采用MVC模式,主要是作用于用户交互spring 采用IOC和AOP~作用比较抽象,是用于项目的松耦合hiber ...
- 使用SSH框架实现用户登录验证
今天,写一个非常简单的通过struts+hibernate+spring的集成来实现用户登录验证的例子,让大家了解一下三者是如何是整合的. 我们可以通过myeclipse的向导,生成相应的环境搭建,如 ...
- SSH框架整合-慕课课程
SSH框架整合-慕课课程 学习时间:2018年12月3日 慕课链接:基于SSH实现员工管理系统之框架整合篇 内容:Struts2+Hibernate+Spring框架整合,分为Struts2整合Spr ...
- java web的ssh框架_JavaWeb_(SSH论坛)_二、框架整合
基于SSH框架的小型论坛项目 一.项目入门 传送门 二.框架整合 传送门 三.用户模块 传送门 四.页面显示 传送门 五.帖子模块 传送门 六.点赞模块 传送门 七.辅助模块传送门 导入Jar包 导入 ...
最新文章
- 地图构建两篇顶级论文解析
- RBAC基于角色的用户权限管理
- Linux平台下的内存泄漏检测
- 基于【IPv6】静态路由和默认路由的配置
- Java构造和解析Json数据之org.json
- OpenCover+ReportGenerator实现.net代码覆盖率测试
- 工业互联网的最后一公里
- mysql查看日志命令_面对成百上千台服务器产生的日志,试试这款轻量级日志搬运神器!...
- mysql中密码存入加密,如何在数据库中存储加密的密码?
- rabbitmq中的消息有id吗_RabbitMQ 如何实现对同一个应用的多个节点进行广播
- 移动测试基础 android 中 dumpsys 命令使用
- JAVA项目实战开发电商项目案例(一)java技术演进与更新
- 网络工程师笔记--网络管理技术
- 三段式状态机的原理/代码/仿真,1001序列检测实例Verilog
- 20张图深度详解MAC地址表、ARP表、路由表
- vue 中引入阿里云的云盾防水墙
- 第4章 网络信息资源检索
- 计算机应用行业平均市盈率,申万行业指数:二级行业:市盈率:医疗器械
- get请求报404 NOT FOUND问题的原因及解决。
- Office 2016 卡顿问题!如果其他方法都没有用就关掉硬件加速!