Spring Boot第三讲:接口如何返回json对象,跳转页面

1、spring boot是非常鼓励前后端分离的,意味着spring boot项目只需要负责提供接口返回数据给前端,那么如何返回一个json对象给前端?这里需要用到一个注解@RestController,首先创建一个用户实体user.java

public class User {

    private String username; //用户名
    
    private String sex;//性别
    
    private Integer age;//年龄

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}

2、在controller写一个返回对象的方法
Spring Boot第三讲:接口如何返回json对象,跳转页面_第1张图片
Spring Boot第三讲:接口如何返回json对象,跳转页面_第2张图片

一个简单的返回json对象接口就这么诞生了,这种json格式的接口也是最常用的数据返回格式,99%企业里面做项目前后端联调都是通过这种接口返回数据。

3、虽然spring boot鼓励大家前后端分离,不要把页面放到spring boot里面,但是一些项目为了方便依然把页面放在spring boot项目里面,那么怎么实现后端页面跳转到其他页面?

A、首先在pom中引入一个依赖,这个依赖引入后就表示我们可以在spring boot里面玩页面了

    
        org.springframework.boot
        spring-boot-starter-thymeleaf
    

B、在resources下面创建一个statisic文件夹,然后在里面创建一个index.html,在application.properties添加一返回路径前缀配置

#指定返回的页面地址的前缀
spring.thymeleaf.prefix=classpath:/statisic/

Spring Boot第三讲:接口如何返回json对象,跳转页面_第3张图片
Spring Boot第三讲:接口如何返回json对象,跳转页面_第4张图片
C、现在我们要在controller写一个方法跳转页面,在这里我们不能用@RestController注解,要改用@Controller,因为@Controller才支持页面跳转

Spring Boot第三讲:接口如何返回json对象,跳转页面_第5张图片
Spring Boot第三讲:接口如何返回json对象,跳转页面_第6张图片

D、可以看到访问的页面已经返回的是index.html里面的内容了,但是细心的朋友会发现这个时候访问我们之前的接口会报错了,但是如果我们在之前的接口上加上一个@ResponseBody,又能正常获取数据了
Spring Boot第三讲:接口如何返回json对象,跳转页面_第7张图片
加上注解后,接口正常
Spring Boot第三讲:接口如何返回json对象,跳转页面_第8张图片
4、总结:
A、如果想接口返回数据给前端使用@RestController 或者 @Controller+@ResponseBody
B、如果想接口跳转页面,需要引入thymeleaf ,然后在application.properties配置跳转前缀路径,最好在类上面使用@Controller

你可能感兴趣的:(spring,boot)