一文掌握JavaBean技术__JavaWeb

JavaBean是Java Web程序的重要组成部分,是一个可重复使用的软件组件,是用Java语言编写的、遵循一定标准的类,它封装了数据和业务逻辑,供JSP或Servlet调用,完成数据封装和数据处理等功能。

一、JavaBean的设计

1.1 设计规则

JavaBean的设计规则

  • JavaBean是一个公共类
  • JavaBean类具有一个公共的无参的构造方法
  • JavaBean所有的属性定义为私有的
  • 在JavaBean中,需要对每个属性提供两个公共方法。假设属性名字是xxx,要提供的两个方法:
    • setXxx():用来设置属性xxx的值。
    • getXxx():用来获取属性xxx的值(若属性类型是boolean,则方法名为isXxx())。
  • 定义JavaBean时,通常放在一个命名的包下。

1.2 设计案例

设计一个表示圆的JavaBean类Circle.java

public class Circle {
	private double radius;//半径
	private double x;//圆心x值
	private double y;//圆心y值
	
	/**
	 * get/set方法
	 * @return
	 */
	public double getRadius() {
		return radius;
	}
	public void setRadius(double radius) {
		this.radius = radius;
	}
	public double getX() {
		return x;
	}
	public void setX(double x) {
		this.x = x;
	}
	public double getY() {
		return y;
	}
	public void setY(double y) {
		this.y = y;
	}
	
	//无参构造
	public Circle() {
		super();
		// TODO Auto-generated constructor stub
	}
}

二、在JSP中使用JavaBean

2.1 声明JavaBean对象

声明JavaBean对象,需要用到<jsp:useBean>动作标签

格式:

<jsp:useBean id="对象名" class="JavaBean类名" scope="作用范围" />

在指定的范围内,调用class属性所指定的类的无参构造方法生成对象。若该对象已存在,则直接调用。
说明:

  • class属性:指定JavaBean的类名,并且必须使用全限定类名。
  • id属性:指定创建的对象名。
  • scope属性:指定对象的作用范围。取值为page request session application 四种,默认值为page

例如,

<jsp:useBean id="circle" class="beans.Circle" scope="page"/>

2.2 设置JavaBean属性值

需要使用<jsp:setProperty>动作标签来调用JavaBean中的 set方法来设置属性值。

1.直接赋值

格式

<jsp:setProperty name="对象名" property="属性名" value="属性值"/>

说明:

  • name属性:指定JavaBean对象名
  • property属性:指定要设置的属性名
  • value属性:指定属性值

实例:

<jsp:useBean id="circle" class="test1.Circle" scope="page"/>
		<jsp:setProperty property="x" name="circle" value="10"/>
		<jsp:setProperty property="y" name="circle" value="20"/>
<!-- 给圆心x,y赋值-->

2.单个属性与输入参数的直接关联

客户端提交的请求参数可以直接给JavaBean实例中的同名属性赋值。

格式:

<jsp:setProperty name="对象名" property="属性名" />

实例:

<jsp:useBean id="circle" class="test1.Circle" scope="page"/>
		<jsp:setProperty property="x" name="circle" />
		<jsp:setProperty property="y" name="circle" />

注意:参数名应当与属性名相同

3.单个属性与输入参数的间接关联

若输入的参数名与JavaBean的属性名不同,则可以间接赋值

格式:

<jsp:setProperty name="对象名" property="属性名" param="参数名" />

例子:

<jsp:useBean id="circle" class="test1.Circle" scope="page"/>
		<jsp:setProperty property="x" name="circle" param="shuju1" />
		<jsp:setProperty property="y" name="circle" param="shuju2"/>

4. 所有的属性与请求参数关联

将所有的参数给JavaBean中的与参数同名属性赋值

格式:

<jsp:setProperty name="对象名" property="*" />

举例:

<jsp:useBean id="circle" class="test1.Circle" scope="page"/>
		<jsp:setProperty property="*" name="circle" />

2.3 访问JavaBean属性

显示JavaBean属性值,需要用到<jsp:getProperty>动作标签
格式:

<jsp:getProperty name="对象名" property="属性名" />

例如,

<jsp:getProperty name="circle" property="x" />

2.4 访问JavaBean方法

使用<jsp:useBean>动作标签实例化一个JavaBean对象后,可以使用JSP脚本代码来调用JavaBean中的方法。

例如:

<jsp:useBean id="circle" class="test1.Circle" scope="page"/>
<% 
	circle.setRadius(4);
	out.print(circle.getRadius());
%>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的Java Web计算器的实现过程: 1. 首先创建一个JSP页面,用于显示计算器界面。在该页面中,需要有一些按钮,如数字、运算符、清除、等于等。 2. 创建一个JavaBean类,用于处理计算器的逻辑。在该类中,需要定义一些成员变量,如操作数1、操作数2、运算符等,以及一些方法,如加、减、乘、除等。 3. 在JSP页面中,使用`<jsp:useBean>`指令引用JavaBean类,并通过`<jsp:setProperty>`指令设置JavaBean类的属性。 4. 在JSP页面中,使用`<% %>`标签引用JavaBean类中的方法,用于处理用户的操作。例如,当用户点击加号按钮时,调用JavaBean类中的加法方法。 5. 最后,使用`<%= %>`标签输出计算结果。 下面是一个简单的Java Web计算器的代码实现: Calculator.jsp: ```jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="com.example.bean.CalculatorBean" %> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Calculator</title> </head> <body> <h1>Calculator</h1> <form method="post"> <table> <tr> <td colspan="4"><input type="text" name="result" value="${calculatorBean.getResult()}" /></td> </tr> <tr> <td><input type="button" value="7" onclick="document.forms[0].result.value += '7'" /></td> <td><input type="button" value="8" onclick="document.forms[0].result.value += '8'" /></td> <td><input type="button" value="9" onclick="document.forms[0].result.value += '9'" /></td> <td><input type="button" value="+" onclick="document.forms[0].operator.value = '+'" /></td> </tr> <tr> <td><input type="button" value="4" onclick="document.forms[0].result.value += '4'" /></td> <td><input type="button" value="5" onclick="document.forms[0].result.value += '5'" /></td> <td><input type="button" value="6" onclick="document.forms[0].result.value += '6'" /></td> <td><input type="button" value="-" onclick="document.forms[0].operator.value = '-'" /></td> </tr> <tr> <td><input type="button" value="1" onclick="document.forms[0].result.value += '1'" /></td> <td><input type="button" value="2" onclick="document.forms[0].result.value += '2'" /></td> <td><input type="button" value="3" onclick="document.forms[0].result.value += '3'" /></td> <td><input type="button" value="*" onclick="document.forms[0].operator.value = '*'" /></td> </tr> <tr> <td><input type="button" value="0" onclick="document.forms[0].result.value += '0'" /></td> <td><input type="button" value="C" onclick="document.forms[0].result.value = ''" /></td> <td><input type="submit" value="=" /></td> <td><input type="button" value="/" onclick="document.forms[0].operator.value = '/'" /></td> </tr> <tr> <td colspan="4"><input type="hidden" name="operator" /></td> </tr> </table> </form> </body> </html> ``` CalculatorBean.java: ```java package com.example.bean; public class CalculatorBean { private double operand1; private double operand2; private String operator; private double result; public CalculatorBean() { } public double getOperand1() { return operand1; } public void setOperand1(double operand1) { this.operand1 = operand1; } public double getOperand2() { return operand2; } public void setOperand2(double operand2) { this.operand2 = operand2; } public String getOperator() { return operator; } public void setOperator(String operator) { this.operator = operator; } public double getResult() { return result; } public void setResult(double result) { this.result = result; } public void add() { result = operand1 + operand2; } public void subtract() { result = operand1 - operand2; } public void multiply() { result = operand1 * operand2; } public void divide() { result = operand1 / operand2; } } ``` 在以上代码中,我们通过`<jsp:useBean>`指令引用了CalculatorBean类,并使用`<jsp:setProperty>`指令设置了CalculatorBean类的属性。在表单提交时,我们通过JavaScript获取到用户的操作数和运算符,然后调用相应的JavaBean方法处理计算逻辑,最后通过`<%= %>`标签输出计算结果。 希望这篇文章能够帮助你实现一个简单的Java Web计算器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值