学会简单使用Spring Boot中的控制器

版本说明

(版本都比较新哈)spring boot的版本为3.4.3,Java21,Maven3,使用Java语言写控制器,关于部署Spring Boot项目,可以参考我的两篇博客:方法一方法二,本文中不再赘述

前期准备

为了与前面的知识串联起来,我这里使用方法二创建好的项目开始本文中的实验

1.需要把之前的“五子棋.html”变成“wuziqi.html”,避免后续中文解码的麻烦

2.在启动类(OneApplication)的文件夹(org.example)下专门创建一个软件包controller,专门用来放置控制器

控制器的理论介绍

在此引用一下大佬博客总结的话:

在Spring Boot中,控制器(Controller)是处理HTTP请求和返回响应的组件,提供了两种注解来表示此类负责接受和处理 HTTP 请求:@Controller和@RestController。

如果请求的是页面和数据,使用@Controller;如果只是请求数据,则可以使用@RestController。

默认情况下,@RestController注解会将返回的对象数据转换为JSON格式。

1.@Controller

`@Controller`是Spring框架中的一个注解,用于标识一个类作为控制器,该类可以处理HTTP请求并将请求映射到相应的处理方法上,通常与视图解析器结合使用以返回视图页面。

我们现在在软件包controller中创建第1个控制器HelloController

在HelloController中写入以下内容

package org.example.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {

    @GetMapping("game")
    public String home(Model model) {
        return "redirect:/wuziqi.html"; // 返回视图名称
    }
}

之后点击运行启动类OneApplication

我们访问http://localhost:8080/game就可以访问到静态资源

2.@RestController

使用@Controller可以返回你需要的一个视图名称(通常是HTML页面)

如果你希望直接返回JSON或其他格式的数据而不是一个视图,可以使用@RestController。它简化了创建RESTful Web服务的过程,因为每个方法都隐式地返回一个响应体而不是一个视图名。

我们现在在软件包controller中创建控制器HelloRestController

在控制器HelloRestController中输入以下内容:

package org.example.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloRestController {

    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, Spring Boot!";
    }
}

当我们访问http://localhost:8080/hello将会直接返回字符串"Hello, Spring Boot!"作为HTTP响应体

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值