求助JSP编程高手,一道JSP编程题。

2024-11-25 00:34:38
推荐回答(3个)
回答1:

很简单啊;
1、在frist.jsp中获取发送过来的“oper1”,“oper2”和“运算符”这三个信息。
2、运算符是“+”“-”“*”“/”的话各自对应相应的运算即可了。
你的最好加上
--------------------------------------------------
改成这样:


firset.jsp


<%
// 获取3个参数并且放到request作用域中
request.setAttribute("paramOne",request.getParameter("oper1"));
request.setAttribute("paramTwo",request.getParameter("oper2"));
request.setAttribute("jisuan",request.getParameter("jisuan"));
%>



second.jsp


<%
// 得到参数1 并且转为double
double param1 = Double.parseDouble((String)request.getAttribute("paramOne"));
// 得到参数2 并且转为double
double param2 = Double.parseDouble((String)request.getAttribute("paramTwo"));
// 得到要计算的类型
int jisuan = Integer.parseInt((String)request.getAttribute("jisuan"));
// 保存结果
double result = 0;
// 保存操作字符
String op = null;
// 计算
switch(jisuan){
case 1 : result = param1+param2;op="+";break;
case 2 : result = param1-param2;op="-";break;
case 3 : result = param1*param2;op="*";break;
case 4 : result = param1/param2;op="/";break;
}
// 输出结果
out.print(param1 + op + param2 + "=" + result);
%>

回答2:

a.html发送就啥方式呀?
first.jsp的接收方式得对应吧。
把a.html的代码发来看看

回答3:

你的a.html写的不对,没有value怎么传值:

改成这样:


firset.jsp


<%
// 获取3个参数并且放到request作用域中
request.setAttribute("paramOne",request.getParameter("oper1"));
request.setAttribute("paramTwo",request.getParameter("oper2"));
request.setAttribute("jisuan",request.getParameter("jisuan"));
%>



second.jsp


<%
// 得到参数1 并且转为double
double param1 = Double.parseDouble((String)request.getAttribute("paramOne"));
// 得到参数2 并且转为double
double param2 = Double.parseDouble((String)request.getAttribute("paramTwo"));
// 得到要计算的类型
int jisuan = Integer.parseInt((String)request.getAttribute("jisuan"));
// 保存结果
double result = 0;
// 保存操作字符
String op = null;
// 计算
switch(jisuan){
case 1 : result = param1+param2;op="+";break;
case 2 : result = param1-param2;op="-";break;
case 3 : result = param1*param2;op="*";break;
case 4 : result = param1/param2;op="/";break;
}
// 输出结果
out.print(param1 + op + param2 + "=" + result);
%>