ajax-210810-03—练习&全局刷新计算bmi

  • 需求
  • 演示—全局刷新
    • index.jsp(全局刷新—转发操作)
    • result.jsp(全局刷新—转发操作)
    • BmiServlet.java(全局刷新—转发操作)
    • bmiprint.jsp(全局刷新—使用HttpServletResponse输出数据)
    • BmiPrintServlet.java(全局刷新—使用HttpServletResponse输出数据)
    • web.xml(映射servlet)

需求

需求:计算某个用户的 BMI。用户在 jsp 输入自己的身高,体重;servlet 中计算 BMI,并显示 BMI 的计算结果和建议。
BMI 指数(即身体质量指数,英文为 BodyMassIndex,简称 BMI),
是用体重公斤数除以身高米数平方得出的数字,
是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准成人的 BMI 数值:1)过轻:低于 18.52)正常:18.5-23.93)过重:24-274)肥胖:28-325)非常肥胖,高于 32

演示—全局刷新

index.jsp(全局刷新—转发操作)

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>全局刷新---转发操作---bmi</title>
</head><body><p>全局刷新---转发操作---计算bmi</p><form action="bimServlet" method="get">姓名:<input type="text" name="name"/><br/>体重(公斤):<input type="text" name="weight"/><br/>身高(米/单位):<input type="text" name="height"/><br/><input type="submit" value="计算"/></form></body>
</html>

result.jsp(全局刷新—转发操作)

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>result</title>
</head>
<body><p>bmi显示结果</p><p>${msg}</p>
</body>
</html>

BmiServlet.java(全局刷新—转发操作)

package com.bgy.controller;import java.io.IOException;public class BmiServlet extends javax.servlet.http.HttpServlet {protected void doPost(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {}protected void doGet(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {// 接收请求参数String name = request.getParameter("name");String weight = request.getParameter("weight");String height = request.getParameter("height");// 计算bmifloat h = Float.valueOf(height);float w = Float.valueOf(weight);float bmi = w / ( h * h );// 判断bmiString msg = "";if ( bmi < 18.5 ) {msg = "您比较瘦";} else if ( bmi > 18.5 && bmi <= 23.9 ) {msg = "您正常";} else if ( bmi > 24 && bmi <= 27 ) {msg = "您较胖";} else {msg = "您太胖了,长点儿心吧!";}System.out.println("mgs--->"+msg);msg = name + "," + "bmi指数为" + bmi + "," + msg;// 把数据存到requestrequest.setAttribute("msg",msg);// 转发到新页面request.getRequestDispatcher("/result.jsp").forward(request,response);}
}

bmiprint.jsp(全局刷新—使用HttpServletResponse输出数据)

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>全局刷新---使用HttpServletResponse输出数据---bmi</title>
</head><body><p>全局刷新---使用HttpServletResponse输出数据---bmi</p><form action="bimPrintServlet" method="get">姓名:<input type="text" name="name"/><br/>体重(公斤):<input type="text" name="weight"/><br/>身高(米/单位):<input type="text" name="height"/><br/><input type="submit" value="计算"/></form></body>
</html>

BmiPrintServlet.java(全局刷新—使用HttpServletResponse输出数据)

package com.bgy.controller;import java.io.IOException;
import java.io.PrintWriter;public class BmiPrintServlet extends javax.servlet.http.HttpServlet {protected void doPost(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {}protected void doGet(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {// 接收请求参数String name = request.getParameter("name");String weight = request.getParameter("weight");String height = request.getParameter("height");// 计算bmifloat h = Float.valueOf(height);float w = Float.valueOf(weight);float bmi = w / ( h * h );// 判断bmiString msg = "";if ( bmi < 18.5 ) {msg = "您比较瘦";} else if ( bmi > 18.5 && bmi <= 23.9 ) {msg = "您正常";} else if ( bmi > 24 && bmi <= 27 ) {msg = "您较胖";} else {msg = "您太胖了,长点儿心吧!";}System.out.println("mgs--->"+msg);msg = name + "," + "bmi指数为" + bmi + "," + msg;// 使用HttpServletResponse输出数据response.setContentType("text/html;charset=utf-8");// 获取PrintWritePrintWriter writer = response.getWriter();// 输出数据writer.print(msg);// 清空缓存writer.flush();// 关闭流writer.close();}
}

web.xml(映射servlet)

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaeehttp://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><servlet><servlet-name>BmiServlet</servlet-name><servlet-class>com.bgy.controller.BmiServlet</servlet-class></servlet><servlet-mapping><servlet-name>BmiServlet</servlet-name><url-pattern>/bimServlet</url-pattern></servlet-mapping><servlet><servlet-name>BimPrintServlet</servlet-name><servlet-class>com.bgy.controller.BmiPrintServlet</servlet-class></servlet><servlet-mapping><servlet-name>BimPrintServlet</servlet-name><url-pattern>/bimPrintServlet</url-pattern></servlet-mapping>
</web-app>

ajax-210810-03---练习全局刷新计算bmi相关推荐

  1. 1.Ajax局部刷新技术概述,底层原理,全局刷新的例子

    文章目录 Ajax 0.第四阶段概述 本阶段课程内容: 哪些感觉比较难? 1.全局刷新 和局部刷新 2.异步对象 3.Ajax 4.Ajax中使用异步对象 (1)创建异步对象 (2)给异步对象绑定事件 ...

  2. Ajax实战代码详解(实现BMI计算器)

    文章目录 Ajax实战(一) 1.Ajax基础知识回顾 2.使用全局刷新,实现计算BMI. 3.Ajax技术(局部刷新)实现计算BMI. 3.1前端代码 3.2后端代码BmiAjaxServlet 3 ...

  3. 实现页面刷新(全局刷新)

    1.简介 全局刷新,就是当触发请求的时候(xx.do),会实现全部界面的刷新(旧的页面销毁,新的页面呈现出来) 2.新建一个servlet类 public class DemoServlet exte ...

  4. Ajax弹出式无刷新城市选择特效

    为什么80%的码农都做不了架构师?>>>    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...

  5. php无刷新实现页面更新,使用laravel和ajax实现整个页面无刷新的操作方法

    1.数据库文件 CREATE TABLE IF NOT EXISTS mr_key ( id int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT ' ...

  6. ie8不发送ajax,IE8用ajax访问不能每次都刷新的问题

    AJAX简介 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法. A ...

  7. jsp 页面刷新_如何应用XML+XSLT+AJAX组合技术实现无刷新数据查询

    软件项目实训及课程设计指导--如何应用XML +XSLT +AJAX组合技术实现无刷新的数据查询的应用实例 1.在Web应用系统项目中添加一个实现查询的请求页面searchBook.jsp (1)创建 ...

  8. Ajax实例一:利用服务器计算

    Ajax实例一:利用服务器计算 HTML代码 //输入两个数 <input id="number1" type="number"> <inpu ...

  9. vue 全局刷新与局部刷新

    首先说下区别: 全局刷新:是指页面整体刷新,会出现空白,闪烁的情况 局部刷新:是指某个进行重构加载,不会出现空白 全局刷新: App.vue <template><div id=&q ...

最新文章

  1. Forbidden Attack:7万台web服务器陷入被攻击的险境
  2. matlab中partdata,[转载]meanshift算法
  3. Python 技术篇-用paramiko库实现linux服务器文件下载到winodws本地实例演示
  4. CTF-Misc-常用知识点
  5. LiveVideoStackCon2021音视频技术大会北京站开幕在即,精彩抢鲜看
  6. [转载] 字符串操作截取后面的字符串_对字符串的5个必知的熊猫操作
  7. [转载] Python 迭代器 深入理解 与应用示例
  8. c调用python gensim包_Jupyter Notebooks嵌入Excel并使用Python替代VBA宏
  9. BZOJ 1108: [POI2007]天然气管道Gaz
  10. 01-国内开源镜像站汇总
  11. CSS高级技巧【学习笔记】
  12. python爬虫什么意思-python的爬虫是什么意思
  13. 一种将排序值换算为得分值的方法
  14. 兄弟j220怎么清零_兄弟j220怎么清零_兄弟Brother全系列打印机清零大全
  15. python制作白底界面_python 多张图片黑底白字转白底黑字
  16. 对话行癫:解密阿里云顶层设计和底层逻辑 1
  17. 华为网络---静态路由
  18. Oracle 实验五:Oracle中的SQL使用
  19. pip 和conda
  20. C# 多张JPG合成PDF 基于iTextSharp5.5.13.3

热门文章

  1. 如何居中一个div?如何居中一个浮动元素?
  2. [hihocoder1044]状态压缩一
  3. 2022A特种设备相关管理(电梯)判断题及模拟考试
  4. 集群服务器session同步
  5. arm linux 申请gpio,Linux GPIO 的注册与申请
  6. Unity 音乐播放管理器
  7. NB-IoT关键技术与特点
  8. 烧心吃什么马上能缓解11 oracle,【烧心吃什么马上能缓解】_烧心_怎么缓解_怎样缓解-大众养生网...
  9. jts学习——com.vividsolutions.jts.geom包
  10. Palo Alto Networks® PA-220R 下一代防火墙 确保恶劣工况下的网络安全