java+el表达式实现计算器
时间: 2024-10-06 15:05:01 浏览: 4
在Java中,我们可以结合EL (Expression Language) 表达式来创建简单的计算器功能。EL是在Web应用中常用的服务器端表达式语言,主要用于JSP (JavaServer Pages) 中的数据绑定。以下是一个基本示例,展示了如何在一个JavaBean中使用EL表达式来实现加减乘除的计算:
首先,创建一个JavaBean(例如Calculator.java):
```java
public class Calculator {
public double add(double num1, double num2) {
return num1 + num2;
}
public double subtract(double num1, double num2) {
return num1 - num2;
}
public double multiply(double num1, double num2) {
return num1 * num2;
}
public double divide(double num1, double num2) {
if (num2 != 0) {
return num1 / num2;
} else {
throw new IllegalArgumentException("Cannot divide by zero");
}
}
}
```
然后,在JSP页面上(例如 calculator.jsp),你可以这样引用Calculator的函数并显示结果:
```jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Calculator</title>
</head>
<body>
<form action="calculate" method="post">
<label for="num1">Number 1:</label>
<input type="number" id="num1" name="num1"><br><br>
<label for="operator">Operator:</label>
<select id="operator" name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select><br><br>
<label for="num2">Number 2:</label>
<input type="number" id="num2" name="num2"><br><br>
<input type="submit" value="Calculate">
</form>
<%-- 使用EL表达式 --%>
<% String result = calculatorForm.add(request.getParameter("num1"), request.getParameter("num2")); %> <!-- 示例:替换add为对应的运算方法 -->
<p>The result is: <%= result %></p>
</body>
</html>
```
在这个例子中,当用户提交表单,服务器会解析请求参数,并通过EL表达式动态调用Calculator对象的方法进行计算。