吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 849|回复: 24
收起左侧

[已解决] 已解决

  [复制链接]
980041382 发表于 2021-11-12 21:45
本帖最后由 980041382 于 2021-11-13 21:10 编辑

[Java] 纯文本查看 复制代码
package com.web;

import com.domain.Computer;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;

@WebServlet("/handleComputerServlet")
public class HandleComputerServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doPost(request, response);
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        double num1 = Double.parseDouble(request.getParameter("num1"));
        String operator = request.getParameter("operator");
        double num2 = Double.parseDouble(request.getParameter("num2"));

        Computer computer = new Computer();
        HttpSession session = request.getSession();
        if (num2!=0){
            switch (operator) {
                case "+":
                    computer.setResult(num1 + num2);
                    break;
                case "-":
                    computer.setResult(num1 - num2);
                    break;
                case "*":
                    computer.setResult(num1 * num2);
                    break;
                case "/":
                    computer.setResult(num1 / num2);
                    break;
            }
        }else{
            switch (operator) {
                case "+":
                    computer.setResult(num1 + num2);
                    break;
                case "-":
                    computer.setResult(num1 - num2);
                    break;
                case "*":
                    computer.setResult(num1 * num2);
                    break;
                case "/":
                    session.setAttribute("result", "被除数不能为0");
                    break;
            }
        }
        response.sendRedirect("lookResult.jsp");

    }
}


屏幕截图 2021-11-12 214016.png

屏幕截图 2021-11-12 214327.png

我需要转发计算结果保存到Computer这个实体类里面 然后再在JSP页面调用这个结果

补充一下lookResult的代码
[JavaScript] 纯文本查看 复制代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="com.domain.Computer" %>
<jsp:useBean id="computer" class="com.domain.Computer" scope="session"/>
<jsp:setProperty name="computer" property="*"/>
<html>
<head>
    <title>Title</title>
</head>
<body>
<h1><b>结果是:<jsp:getProperty name="computer" property="result"/></b></h1>


<h1><b>${result}</b></h1>
</body>
</html>


补充一下inputNumber的代码
[JavaScript] 纯文本查看 复制代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<form action="${pageContext.request.contextPath}/handleComputerServlet" method="post">
    <input type="text" name="num1" width="50px" />
    <select name="operator">
        <option value="+">+</option>
        <option value="-">-</option>
        <option value="*">*</option>
        <option value="/">/</option>
    </select>
    <input type="text" name="num2" width="50px"/>
    <input type="submit" value="计算"/>
</form>
</body>
</html>

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 980041382 发表于 2021-11-12 21:46
JSP我已经写好了 实体类就是double类型的num1、num2、result和String类型的运算符 以及对应的get和set方法
13599383608 发表于 2021-11-12 21:58
你这个不是已经存在Computer实体类里面了吗 把这个实体类存在session里面 然后在jsp页面去get出来
 楼主| 980041382 发表于 2021-11-12 22:02
13599383608 发表于 2021-11-12 21:58
你这个不是已经存在Computer实体类里面了吗 把这个实体类存在session里面 然后在jsp页面去get出来

不是啊。Computer实体类的Result是没有值的 需要我这个servlet计算出来啊 然后再存入到实体类里面
13599383608 发表于 2021-11-12 22:05
setResult不是已经计算出来了吗
 楼主| 980041382 发表于 2021-11-12 22:20
13599383608 发表于 2021-11-12 22:05
setResult不是已经计算出来了吗

我计算出来 但是我到页面 还是没有值啊
 楼主| 980041382 发表于 2021-11-12 22:54
我是想实体类储存结构 Servlet进行运算 JSP进行展示 和获取值
bxy 发表于 2021-11-12 23:20
session.setAttribute("result", computer);

免费评分

参与人数 1吾爱币 +1 收起 理由
980041382 + 1 热心回复!

查看全部评分

 楼主| 980041382 发表于 2021-11-12 23:23
bxy 发表于 2021-11-12 23:20
session.setAttribute("result", computer);

大佬为什么改了以后还是运算不了啊。。得到的结果一直都是0
bxy 发表于 2021-11-12 23:26
980041382 发表于 2021-11-12 23:23
大佬为什么改了以后还是运算不了啊。。得到的结果一直都是0

你得给num1和2传参, 在swit结束后set

免费评分

参与人数 1热心值 +1 收起 理由
980041382 + 1 热心回复!

查看全部评分

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 21:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表