实验5 JavaBean创建和使用

一、实验目的

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

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

二、实验内容

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

   要求:完成加减乘除

(1)       加法、减法如下:

(2)       乘法如下:

3当除数为零时提示报错:

 

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

 

三、实验方法

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

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

 

四、实验学时:2学时

一、实验目的

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

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

二、实验内容

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

   要求:完成加减乘除

(1)       加法、减法如下:

(2)       乘法如下:

3当除数为零时提示报错:

 

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

 

三、实验方法

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

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

 

四、实验学时:2学时
1、计算显示calculator.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>计算器</title>
<style type="text/css">  
body {  
    background: url(image/1.jpg) repeat;  
}  
</style>  
  
</head>
<body>
<jsp:useBean id="calculater" scope="request" class="test.calculator" />

    <jsp:setProperty name="calculater" property="*" />

<p align="center">简单的计算器</p>
<form action="calculator.jsp" method="post">
<br/>
<p> 
<%
            if(request.getParameter("op") != null){
                String op = request.getParameter("op");
                
                if(op.equals("chu") && calculater.getNum2() == 0){
                    out.print("Sorry,出错了!被除数不能为零");
                }else{
                %>
                <%="_________________________________\n" %><br/>
                <br/>
                <%="计算结果是:"%>
                
                <%=calculater.getNum1()%> 
                <%
                    if(op.equals("jia")) out.print("+");
                    if(op.equals("jian")) out.print("-");
                    if(op.equals("chen")) out.print("*");
                    if(op.equals("chu")) out.print("/");
                %>
                <%=calculater.getNum2()%> 
                = 
                <%=calculater.getResult()%> <br/>
                <%="_________________________________\n" %><br/>
            <%
                }
            } 
            %> 
 </p>

<p>第一个参数<input type="text" name="num1"></p>
<p>
<select name="op" >
<option value="jia">+</option>
<option value="jian">-</option>
<option value="chen">*</option>
<option value="chu">/</option>
</select>
</p>
第二个参数<input type="text" name="num2"><br>
<input type="submit" name="submit" value="计算">
</form>

</body>
</html>
显示结果:

2、Javabean:calculator.java
package test;

public class calculator {
	float num1;
	float num2;
	String op;
	float result;
	
	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 "chen":
				result1=num1*num2;
				break;
			case "chu":
				result1=num1/num2;
				break;
			default:
					break;
			}
		}
		catch (Exception e) {
            e.getMessage();
        }

		return result1;
	}

	
	
}

Javaweb实验中,可以利用JavaBean来进行简单的数学计算,比如计算矩形的面积周长。JavaBean是一组Java类,它遵循一定的规则,通常包含getset方法以及业务属性,适合于在Web应用中传递数据。 步骤如下: 1. **创建JavaBean**:首先,定义一个名为`Rectangle`的JavaBean类,它有两个属性:长度`length`宽度`width`,并分别为这两个属性提供gettersetter方法。 ```java public class Rectangle { private double length; private double width; // getter and setter methods public double getLength() { return length; } public void setLength(double length) { this.length = length; } public double getWidth() { return width; } public void setWidth(double width) { this.width = width; } // method to calculate area and perimeter public double calculateArea() { return length * width; } public double calculatePerimeter() { return 2 * (length + width); } } ``` 2. **在Servlet中使用**:在JSP页面对应的Servlet(如`MyServlet.java`)中,实例化`Rectangle`对象,并从表单获取用户输入的长度宽度,然后调用其计算方法。 ```java protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // Get user inputs from the form String lengthStr = request.getParameter("length"); String widthStr = request.getParameter("width"); // Convert input strings to doubles double length = Double.parseDouble(lengthStr); double width = Double.parseDouble(widthStr); // Create a new Rectangle object Rectangle rectangle = new Rectangle(); rectangle.setLength(length); rectangle.setWidth(width); // Calculate area and perimeter double area = rectangle.calculateArea(); double perimeter = rectangle.calculatePerimeter(); // Display results in the JSP page request.setAttribute("area", area); request.setAttribute("perimeter", perimeter); // Forward to the JSP page where you can display the result RequestDispatcher dispatcher = request.getRequestDispatcher("result.jsp"); dispatcher.forward(request, response); } ``` 3. **显示结果**:在`result.jsp`页面上,取出计算后的面积周长,展示给用户。 ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Rectangle Area & Perimeter</title> </head> <body> <h2>Rectangle Details:</h2> <p>Area: <%= request.getAttribute("area") %> square units</p> <p>Perimeter: <%= request.getAttribute("perimeter") %> units</p> </body> </html> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值