实验5 JavaBean创建和使用
一、实验目的
1、掌握JavaBean创建和使用方法;
2、领会JavaBean简化页面设计的优势等。
二、实验内容
1、设计诸如以下页面的简单计算器
要求:完成加减乘除
(1) 加法、减法如下:
(2) 乘法如下:
(3)当除数为零时提示报错:
2.将加减乘除部分写在JavaBean中,在JSP页面中调用显示计算结果。
三、实验方法
1、按照JavaBean书写规则,实现加减乘除;
2、主页面JSP中,设置供客户端输入的文本框。并显示最终计算结果。
四、实验学时:2学时(第9周)
五、实验代码:
calculater.jsp
(页面显示)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<jsp:useBean id="calculater" scope="request" class="exp5.calculater" />
<jsp:setProperty name="calculater" property="*" />
<form action="calculater.jsp" method="get">
<hr align="left" style="width: 400px;">
计算结果是:
<span>
<%
if(request.getParameter("operator") != null){
String operator = request.getParameter("operator");
int oper = Integer.parseInt(operator);
if(oper == 4 && calculater.getNum2() == 0){
out.print("出错,除数不能为零!");
}else{
%>
<%=calculater.getNum1()%>
<%
if(oper == 1) out.print("+");
if(oper == 2) out.print("-");
if(oper == 3) out.print("*");
if(oper == 4) out.print("/");
%>
<%=calculater.getNum2()%>
=
<%=calculater.getResult()%>
<%
}
}
%>
</span>
<!-- 表达式显示 -->
<hr align="left" style="width: 400px;">
<div align="left" style="width: 400px;">
<p align="center">简单计算器</p>
第一个参数:<input type="text" name="num1" /><br>
<div style="padding-left: 100px;">
<select name="operator">
<option value="1">+</option>
<option value="2">-</option>
<option value="3">*</option>
<option value="4">/</option>
</select>
</div>
第二个参数:<input type="text" name="num2" /><br> <input type="submit"
value="计算" style="margin-left: 100px;" />
</div>
</form>
</body>
</html>
calculater.java
(JavaBean逻辑计算处理)
package exp5;
/**
* @author yilong 创建时间:2017-4-19 下午3:06:34
*
*/
public class calculater {
float num1; // 参数1
int operator; // 运算符
float num2; // 参数2
float result; // 运算结果
public calculater() {
super();
}
public float getNum1() {
return num1;
}
public void setNum1(float num1) {
this.num1 = num1;
}
public int getOperator() {
return operator;
}
public void setOperator(int operator) {
this.operator = operator;
}
public float getNum2() {
return num2;
}
public void setNum2(float num2) {
this.num2 = num2;
}
public float getResult() { // 计算式的运算结果
float result1 = 0;
try {
switch (operator) {
case 1:
result1 = num1 + num2;
break;
case 2:
result1 = num1 - num2;
break;
case 3:
result1 = num1 * num2;
break;
case 4:
result1 = num1 / num2;
break;
default:
break;
}
} catch (Exception e) {
e.getMessage();
}
return result1;
}
}