有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何解决这个问题,我无法从Postman或浏览器访问控制器类方法?

我正在运行一个简单的Spring boot应用程序,它在控制台中成功运行。但当我试图通过邮递员,它给出了这个错误信息

{
"timestamp": "2020-07-26T04:22:15.626+00:00",
"status": 404,
"error": "Not Found",
"message": "",
"path": "/loginRegistration/user/"

}

我的项目结构是。。。 enter image description here

我的主课是


import org.example.controller.User;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;

@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
        System.out.println("Welcome");
    }
}

我的控制器是


import com.fasterxml.jackson.core.JsonProcessingException;
import org.example.entity.Registration;
import org.example.model.UserDto;
import org.example.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/user")
public class User {
    @Autowired
    UserService userService;

    @RequestMapping(value = "/registration", method = RequestMethod.POST)
    public String registerUser(@Validated UserDto userdto) throws JsonProcessingException {
        userService.registerUser(userdto);
        return "success";
    }

    @RequestMapping(value = "/getUserList", method = RequestMethod.GET)
    public List<Registration> getUserList() {
        List<Registration> list = userService.getUserList();
        return list;

    }

    @RequestMapping(value = "/")
    public String test() {
        return "testing";
    }
}

请告诉我需要做哪些更改才能在postman上运行


共 (2) 个答案

  1. # 1 楼答案

    spring application name does not use as context path. You will have to define below property in your application.properties file to use 'loginRegistration' as your context path.

    server.servlet.context-path=/loginRegistration
    

    现在您可以将其用作/loginRegistration/user/

    如果有帮助,请告诉我。谢谢

  2. # 2 楼答案

    你必须确保,你提供了战争名称以及你给定的URL。。。看,包裹应该在你的主课下面。。。如果没有,你必须使用componentscan添加主类