软件园学生在线

  • {{ item.name }}
  • 2023试用期

登录与注册

【后端一】沈怀瑾

  • 沈 怀瑾
  • 2022-10-14
  • 0

基于Spring boot 的简单 REST API

一、产品介绍

基于培训的加法基础上,扩充到了有理数的四则运算(两个未知数)。尝试借助群内文档实现判断数据是否溢出,但未实现。

使用说明:在浏览器中输入

加法:localhost:8080/add?a=(具体值)&b=(具体值)

减法:localhost:8080/minus?a=(具体值)&b=(具体值)

乘法:localhost:8080/times?a=(具体值)&b=(具体值)

除法:localhost:8080/divide?a=(具体值)&b=(具体值)

取模:localhost:8080/modulo?a=(具体值)&b=(具体值)

二、学习历程

1.了解@GetMaping和@postMapping

两者均为组合注解

@GetMapping = @requestMapping(method = RequestMethod.GET)

浏览器发送Get请求有

1.直接在地址栏中输入地址

2.点击链接

3.表单默认提交方式

@PostMapping = @requestMapping(method =RequestMethod.POST)

2.尝试判断数据是否溢出

根据 https://blog.csdn.net/qq_33330687/article/details/81626157 中

给出的方法,个人理解为Java写好了判断数据相加判断的函数,故首先尝试直接调

用

 @GetMapping("/add")
    public int add (@RequestParam int a , @RequestParam int b){
        int r = a + b;
        return Math.addExact(a, b);

应该是个人原因(不会用函数),使用postman调试后并没有出现Java关于数据

溢出的相关语句(查自https://blog.csdn.net/allway2/article/details/117631597)

而后直接借鉴(复制bushi 网址中给出的if判断方法,发现在实际程序编写中并不能

实现用0和1来代表数字的符号位,并且不能实现用0和1来代表布尔类型,以起到

判断作用。(个人理解,可能是太菜了)

 @GetMapping("/add")
    public int add (@RequestParam int a , @RequestParam int b){
        int r = a + b;
        if (((a ^ r) & (b ^ r)) < 0){
            System.out.println("超出了int的范围");
        }
            return a + b;
    }

三、代码

public class Main {
    @GetMapping("/add")
    public int add (@RequestParam int a , @RequestParam int b){
        int r = a + b;
            return a + b;
    }
    @GetMapping("/divide")
    public double divide (@RequestParam double a , @RequestParam double b){
        return a/b;}
    @GetMapping("/minus")
    public double minus (@RequestParam double a , @RequestParam double b){
        return a-b;}
    @GetMapping("/times")
    public double times (@RequestParam double a , @RequestParam double b){
        return a*b;}
    @GetMapping("/modulo")
    public double modulo  (@RequestParam double a , @RequestParam double b){
        return a%b;}
}
沈 怀瑾
沈 怀瑾
© 2025 软件园学生在线
Theme by Wing