实验4 JavaBean创建和使用

 

 

一、实验目的

1、掌握JavaBean创建和使用方法;

2、领会JavaBean简化页面设计的优势等。

二、实验内容

1、设计诸如以下页面的简单计算器

   要求:完成加减乘除

加法、减法如下:

实验4 JavaBean创建和使用

乘法如下:

实验4 JavaBean创建和使用

当除数为零时提示报错:

实验4 JavaBean创建和使用

实验4 JavaBean创建和使用

2.将加减乘除部分写在JavaBean中,在JSP页面中调用显示计算结果。

 

三、实验方法

1、按照JavaBean书写规则,实现加减乘除;

2、主页面JSP中,设置供客户端输入的文本框。并显示最终计算结果。


calculater.jsp

<%@ page language="java" import="java.*"
	contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>简单计算器</title>
<style type="text/css">
body {
	width: 400px;
	border: 1px solid #151515;
	padding: 50px;
	text-align: center;
	margin: auto;
}
</style>
</head>
<body>
	<!-- 将数据封装到bean中,作用域为当前页面 -->
	<jsp:useBean id="calculater" scope="page" class="test4.Calculater" />
	<!--<jsp:setProperty name="calculater" property="*" />-->
	<p align="center">简单计算器</p>
	<form action="calculater.jsp" method="post">
		<br />

		<p align="center">
			<!-- 只能输入数字,将输入值为非数字的字符替换为空 “onkeyup”=按键抬起触发,“onafterpaste”=粘贴之后触发 -->
			第一个参数<input type="text" name="num1" id="num1"
				onkeyup="this.value=this.value.replace(/\D/g,'')"
				onafterpaste="this.value=this.value.replace(/\D/g,'')">

		</p>
		<p align="center">
			<select name="op">
				<option value="jia">+</option>
				<option value="jian">-</option>
				<option value="cheng">*</option>
				<option value="chu">/</option>
			</select>
		</p>
		<p align="center">
			第二个参数<input type="text" name="num2" id="num2"
				onkeyup="this.value=this.value.replace(/\D/g,'')"
				onafterpaste="this.value=this.value.replace(/\D/g,'')">
		</p>
		<br> <input style="display: block; margin: 0 auto" type="submit"
			name="submit" value="计算">
		<p align="center">
			<span style="color: red"> <!-- 如果出错字体为红色 --> <%
 	if (request.getParameter("op") != null) {
 		String op = request.getParameter("op");
 		//如果被除数为0则报错
 		if (op.equals("chu") && calculater.getNum2() == 0) {
 			out.print("Sorry,出错了!被除数不能为零");
 		}

 		else {
 %>
			</span><span style="color: green"> <%="计算结果:"%> 
			<%=calculater.getNum1()%>
				<%
					if (op.equals("jia"))
								out.print("+");
							if (op.equals("jian"))
								out.print("-");
							if (op.equals("cheng"))
								out.print("*");
							if (op.equals("chu"))
								out.print("/");
				%> 
				<%=calculater.getNum2()%> = <%=calculater.getResult()%> <br /> <%
 	}
 	}
 %>
		</p>
		</span>
	</form>

</body>
</html>

实验4 JavaBean创建和使用

Calculater.java

package test4;
import java.math.BigDecimal;
public class Calculater {
	String classesPath = "/WEB-INF/classes";		
		private float num1;
		private float num2;
		private String op;
		private float result;
		public Calculater() {}
		public float getNum1() {
			return num1;
		}
		public void setNum1(float num1) {
			this.num1 = num1;
		}
		public float getNum2() {
			return num2;
		}
		public void setNum2(float num2) {
			this.num2 = num2;
		}
		public String getOp() {
			return op;
		}
		public void setOp(String op) {
			this.op = op;
		}
		public float getResult() {
			float result1=0;
			try{
				switch(op){
				case "jia":
					result1=num1+num2;
					break;
				case "jian":
					result1=num1-num2;
					break;
				case "cheng":
					result1=num1*num2;
					break;
				case "chu":
					result1=num1/num2;
					break;
				default:
						break;
				}
			}
			catch (Exception e) {
	            e.getMessage();
	        }	
			return result1;
		}
		public void setResult(float result) {
			this.result = result;
		}
		
		
	}




实验4 JavaBean创建和使用

实验4 JavaBean创建和使用