全局刷新:使用jsp显示request作用域中的数据,使用el表达式
一、使用idea新建一个web项目步骤如下:
并且还需要配置好Tomact,不会的点击这里:Tomact配置
二、配置项目:
三、编写jsp页面:
2、编写页面代码:
注意: 中action的值要与第二步中的前端获取的路径的地址一样
<html>
<head>
<title>全局刷新实现计算BMI</title>
</head>
<body>
<div align="center">
<p>计算BMI</p>
<form action="bmiServlet" method="get">
姓名:<input type="text" name="name"><br/>
体重:<input type="text" name="weight"><br/>
身高:<input type="text" name="height"><br/>
操作:<input type="submit" value="计算BMI"><br/>
</form>
</div>
</body>
</html>
四、编写后端Servlet
2、编写页面代码:
package Ajax.controlle;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class BmiServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//请求接收的参数
String strName = request.getParameter("name");
String strWeight = request.getParameter("weight");
String strHeight = request.getParameter("height");
//Srring转为float
float w = Float.valueOf(strWeight);
float h = Float.valueOf(strHeight);
String n = String.valueOf(strName);
//计算BMI公式w/(h*h)
float bmi = w/(h*h);
String info = "";
if (bmi<18.5){
info = "比较瘦";
}else if(bmi>=18.5 && bmi<23.9){
info = "正常范围";
}else {
info = "比较胖";
}
//把数据保存到request作用域
info = n +",您的BMI是:"+bmi+","+info;
request.setAttribute("info",info);
//需要使用视图,显示数据
request.getRequestDispatcher("/result.jsp").forward(request,response);
}
}
五、编写后request跳转页面
注意:文件名要与第四步中 request.getRequestDispatcher("/result.jsp")中的文件名一致
六、点击运行