首页 > 其他分享 >Spring boot API测试 Controller逻辑正常但返回404(@Controller和@RestConntroller区别)

Spring boot API测试 Controller逻辑正常但返回404(@Controller和@RestConntroller区别)

时间:2022-09-28 10:15:16浏览次数:59  
标签:返回 Spring boot ResponseBody Controller 404 RestConntroller mail

使用postman测试接口,返回404错误,如下所示

{
    "timestamp": 1507703410086,
    "status": 404,
    "error": "Not Found",
    "message": "Not Found",
    "path": "/asset-mqtt/mqtt/publish/mqtt/publish/hellomqtt11"
}

查看Controller层代码如下

@Controller
public class test {

    @Value("${spring.mail.username}")
    private String from;

    @GetMapping("/mail")
    @ResponseBody
    public String mail() {
        System.out.println("test.mail");
        return "字符串测试。。。";
    }

}

结果如下:
页面
控制台


将Controller改为RestConntroller或者在mail()方法上加上一个@ResponseBody注解,问题成功解决!
如图所示:
image
image


|附:@Controller和@RestConntroller区别
@RestController is a stereotype annotation that combines @ResponseBody and @Controller.
意思是:
@RestController注解相当于@ResponseBody + @Controller合在一起的作用。

  1. 如果只是使用@RestController注解Controller,则Controller中的方法无法返回jsp页面,配置的视图解析器InternalResourceViewResolver不起作用,返回的内容就是Return 里的内容。

    例如:本来应该到success.jsp页面的,则其显示success.

  2. 如果需要返回到指定页面,则需要用 @Controller配合视图解析器InternalResourceViewResolver才行。

  3. 如果需要返回JSON,XML或自定义mediaType内容到页面,则需要在对应的方法上加上@ResponseBody注解。

标签:返回,Spring,boot,ResponseBody,Controller,404,RestConntroller,mail
From: https://www.cnblogs.com/little-monster-lhq/p/16737006.html

相关文章

  • 计算机毕设选题新颖推荐 springboot+vue心理咨询预约系统 ssm校园心理咨询平台 java心
    ......
  • 5.bootstrap
      ......
  • 1.Spring、IOC与依赖注入
    Spring概述Spring是分层的JavaSE/EE应用full-stack轻量级开源框架,以IoC(InverseOfControl:反转控制)和AOP(AspectOrientedProgramming:面向切面编程)为内核,提供了展现层Spr......
  • springboot+websocket
    springboot+websocket:先引入websocket的依赖包<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-we......
  • 记一次使用spring javaconfig踩到的坑
    前言为了简化开发,我部门经常会封装一些通用的类库给业务研发使用,因为业务方的根包路径很经常和我们部门项目的根包是不一样的,因此我们会让业务方在使用我们封装的包时,扫描......
  • SpringBoot整合MyBatis
    配置准备引入依赖在pom.xml文件中引入数据库和mybatis相关依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-j......
  • SpringBoot 常用读取配置文件的 3 种方法!
    我们在SpringBoot框架进行项目开发中该如何优雅的读取配置呢?或者说对于一些List或者Map应该如何配置呢?本篇主要解决如下几个问题:1、SpringBoot有哪些常用的读取配置文件......
  • springboot 整合Ehcache的使用
    Springboot提供了换粗的统一整合接口,方便缓存技术的开发与管理。Generic,JCache,Ehcache,Hazelcast,Infinispan,Couchbase,Redis,Caffenine,Simple(默认缓存),Memcached。如何整合......
  • spring
    Spring依赖源码下载地址https://repo.spring.io/ui/native/release/org/springframework/spring所需依赖导入spring所需的外部依赖创建spring.xml配置文件........
  • spring boot实现动态增删启停定时任务
    在springboot项目中,可以通过@EnableScheduling注解和@Scheduled注解实现定时任务,也可以通过SchedulingConfigurer接口来实现定时任务。但是这两种方式不能动态添加、删除......