定义一个JAVABEAN,名称为TaxRate其中含有二个简单属性,名称为product与rate,数据类型自定,请编写一个JSP页面实现对上述TaxRate中二个简单属性的存取。
时间: 2024-12-12 19:26:29 浏览: 6
首先,我们需要创建一个名为`TaxRate`的JavaBean,这是一个简单的POJO(Plain Old Java Object)类,只包含两个基本类型的属性。假设我们使用整数类型表示产品ID(product)和税率(rate),那么定义如下:
```java
import java.io.Serializable;
public class TaxRate implements Serializable {
private int productId;
private double rate;
// 构造函数
public TaxRate() {}
// getters and setters
public int getProductId() {
return productId;
}
public void setProductId(int productId) {
this.productId = productId;
}
public double getRate() {
return rate;
}
public void setRate(double rate) {
this.rate = rate;
}
}
```
接下来,我们可以创建一个JSP页面来操作这个`TaxRate`对象的属性。在这个例子中,我们将使用`<jsp:getProperty>`和`<jsp:setProperty>`标签来读取和设置属性值:
```jsp
<html>
<head>
<title>Tax Rate Bean Example</title>
</head>
<body>
<h1>Tax Rate Information</h1>
<form action="updateTaxRate.jsp" method="post">
<label for="productId">Product ID:</label>
<input type="number" id="productId" name="productId"><br><br>
<label for="rate">Tax Rate:</label>
<input type="number" step="0.01" id="rate" name="rate"><br><br>
<input type="hidden" name="beanName" value="taxRate"> <!-- 配置要求:指定bean名 -->
<input type="submit" value="Update">
</form>
<hr>
<%@ page language="java" import="com.example.TaxRate" %>
<%@ page isELIgnored="false" %> <!-- 确保使用EL表达式 -->
<% TaxRate taxRate = (TaxRate) request.getAttribute("taxRate"); %>
Product ID: <%= taxRate.getProductId() %><br>
Tax Rate: <%= taxRate.getRate() %><br>
<!-- 更新属性值 -->
<jsp:setProperty name="taxRate" property="*" param="*"/>
<%
if (taxRate != null) { %>
Product ID updated to: <%= taxRate.getProductId() %><br>
Tax Rate updated to: <%= taxRate.getRate() %><br>
<% } else { %>
Error: TaxRate object not found in session or request.
<% } %>
</body>
</html>
```
在以上代码中,我们在`<jsp:setProperty>`处设置了`property`为"*"表示更新所有属性,`param`为"*"则从表单字段获取所有参数。`<%= ... %>`用于输出Java表达式的值。
阅读全文