springday04-go2
练习:计算一个人的bmi指数。
算法如下:
 身高 单位是米 比如1.70
 体重  单位是公斤 比如90
 bmi指数 = 体重/身高/身高
 如果bmi>24过重,否则正常。
视图需要两个,一个是bmi_form.jsp负责提交参数,view负责显示最后的结果。
BMIController控制器
新建一个web工程bmidemo
1.导入jar包,拷贝xml改名为spring-mvc.xml到src下

2.web.xml中配置DispatcherServlet
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name></display-name>	
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
<servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>
      org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <init-param>
       <param-name>contextConfigLocation</param-name>
       <param-value>classpath:spring-mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
   <servlet-name>springmvc</servlet-name>
   <url-pattern>*.do</url-pattern>
  </servlet-mapping>
</web-app>
3.修改spring-mvc.xml:
   a.开启组件扫描   b.开启spring mvc注解扫描  c.定义视图解析器
<!-- 配置组件扫描 -->
	   <context:component-scan base-package="controller" />
<!-- 配置spring mvc注解扫描 -->
	     <mvc:annotation-driven/>
<!-- 配置视图解析器 -->
	      <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
	      <property name="prefix" value="/WEB-INF/"/>
	      <property name="suffix" value=".jsp"/>
	    </bean>
4.新建bmi_form.jsp页面
<html>
 <head></head>
 <body style="font-size:30px;">
   <form action="bmi.do " method="post">
     height:<input name="height"/><br>
     weight:<input name="weight" /><br>
     <input type="submit" value="Confirm"/>
   </form>
 </body>
</html>
5.新建view页面,使用EL表达式,记得到时候绑定的时候用status
<%@page pageEncoding="utf-8" 
contentType="text/html;charset=utf-8" %>
<!-- 如果输出中有中文,那么写以上代码 -->
<h1>${status }</h1>
6.在src下新建一个包controller,包下新建一个类BMIController,使用注解@Controller,写上toBMI方法。记得加上@RequestMapping注解。
7.类BMIController中继续添加bmiProcess方法,表单中form提交至bmi.do
BMIController.java:
package controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class BMIController {
@RequestMapping("/toBmi.do")
	public String toBMI(){
		return "bmi_form";
	}
@RequestMapping("/bmi.do")
	public String bmiProcess(BmiParam bp,ModelMap data){
		double bmi = bp.getWeight()/bp.getHeight()/bp.getHeight();
		String status ="正常";
		if(bmi>24){
			status="过重";
		}
		data.addAttribute("status", status);
		return "view";
	}
}
8.测试,输入http://localhost:8088/bmidemo/toBmi.do

点击按钮:

springday04-go2的更多相关文章
- go2基本类型
		/* Go基本类型 布尔型:bool - 长度:1字节 - 取值范围:true, false - 注意事项:不可以用数字代表true或false 整型:int/uint - 根据运行平台可能为32或6 ... 
- 后端程序员之路 52、A Tour of Go-2
		# flowcontrol - for - for i := 0; i < 10; i++ { - for ; sum < 1000; { ... 
- Tomcat服务器进击
		一.Tomcat服务器端口配置更改 Tomcat的所有配置都放在conf文件夹之中,server.xml文件就是配置的核心文件. 现在呢,我们需要将8080端口设置成8088端口. 启动端口默认: & ... 
- jQuery动画与特效详解
		本文主要是讲解和学习jQuery的自动显隐,渐入渐出等. 1.显示和隐藏hide()和show() 对于动画来说,显示和隐藏是最基本的效果之一,本节简单介绍jQuery的显示和隐藏. 代码如下: &l ... 
- struts2.5的配置及其注意事项
		坑爹的apache,官方的jar包提供了一个struts2的运行最小jar包 
- Cordova+Asp.net Mvc+GIS跨平台移动应用开发实战1-系统初步搭建(附演示,apk,全部源码)
		1.前言 身处在移动互联网的今天,移动应用开发炙手可热,身为程序猿的我们怎么能错过开发一款我们自己的APP.本人算是一个基于.net的GIS开发入门者(马上就大四啦), 暑假在学校参加GIS比赛有大把 ... 
- PHP+ajaxfileupload与jcrop插件结合 完成头像上传
		昨天花了点时间整合了一下头像插件 东拼西凑的成果 先来看下效果 
- Moon.Orm性能报告
		以下为有网友公司的评估测试及使用规范 大家可以下载word看看 http://pan.baidu.com/s/1hquvRuc 一.和ADO.NET进行的压力测试 说明:2000并发用户,此图为一网友 ... 
- java web学习总结(三) -------------------TOMCAT使用帮助(二)
		一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下: 
- python运算符
		aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAcIAAAHCCAIAAADzel4SAAAgAElEQVR4Aey9+bMcSXLnV1dmna/ejR 
随机推荐
- VC 中 UpdateData() 函数的使用
			UpdateData(FALSE)与UpdateData(TRUE)是相反的过程 UpdateData(FALSE)是把程序中改变的值更新到控件中去 UpdateData(TRUE)是把在控件中输入的 ... 
- js中!!的作用
			js中!!的作用是: !!一般用来将后面的表达式转换为布尔型的数据(boolean) ===表示类型什么的全部相等(自己写一个if测试一下就好了)!==表示要全部不想等包括类型(一样写一个if)||或 ... 
- sphinx
			1.什么是SphinxSphinx 是一个在GPLv2 下发布的一个全文检索引擎,商业授权(例如, 嵌入到其他程序中)需要联系我们(Sphinxsearch.com)以获得商业授权.一般而言,Sphi ... 
- Java迭代 : Iterator和Iterable接口
			从英文意思去理解 Iterable :故名思议,实现了这个接口的集合对象支持迭代,是可迭代的.able结尾的表示 能...样,可以做.... Iterator: 在英语中or 结尾是都是表示 .. ... 
- BeanNameViewResolver
			As described in the documentation, BeanNameViewResolver resolves Views declared as beans. Usually yo ... 
- style="display"之后不能获取offsetHeight或clientWidth这类测量的值
			如果在html元素中设置了style="display:none;height:90px;"的属性后,是无法获得offsetLeft ,offsetWidth,offsetTop, ... 
- SWT常用组件(转)
			转载自:http://www.cnblogs.com/happyPawpaw/archive/2012/10/19/2730478.html 1按钮组件(Button) (1)Button组件常用样式 ... 
- ArcGIS API for Silverlight代码中使用Template模板
			原文:ArcGIS API for Silverlight代码中使用Template模板 在项目开发中,会遇到点选中聚焦闪烁效果,但是因为在使用Symbol的时候,会设置一定的OffSetX和OffS ... 
- WPFFontCache_v0400.exe CPU使用率过高的问题
			最近的电脑很慢 CPU超过50%了 任务管理器显示是WPFFontCache_v0400.exe 的问题 每次强制终止后不就又重新启动很是麻烦, 在MSDN中找到了解决办法: 禁用Windows Pr ... 
- Ubuntu 一键安装pptp
			手工配置完开始能用,后来被机房停机之后无法恢复,下面文章介绍的使用脚本简单好用,感谢作者,下面是链接: http://blog.sina.com.cn/s/blog_6e7bae020102v8wm. ... 
