我正在尝试使用Spring 4编写一个基本的Spring Rest hello world示例。
尝试在班级@RequestMapping
使用@RestController
时收到404错误。当我删除上面的@RequestMapping(value="/rest")
值时,它正在使用网址http://localhost:8080/helloWorld/users/1
上的GET请求。但是当我取消注释它时,我在使用URL http://localhost:8080/helloWorld/rest/users/1
时得到404。
这是我的控制器类:
@RestController
@RequestMapping(value="/rest")
public class UserRestController {
@Autowired
private UserRepository userRepository;
@RequestMapping(value = "/users", method=RequestMethod.POST)
public void save(@RequestBody User user) {
userRepository.save(user);
}
@RequestMapping(value = "/users", method=RequestMethod.GET)
public List<User> list() {
return userRepository.findAll();
}
@RequestMapping(value="/users/{id}", method=RequestMethod.GET)
public User get(@PathVariable("id") int id) {
return userRepository.find(Id);
}
// .......
}
这是我的web.xml
映射
<url-pattern>/*</url-pattern>
答案 0 :(得分:0)
在课堂上放一个明星:
@RequestMapping(value="/rest/*")
或者:
@RequestMapping(value="/`enter code here`rest/users") // at class level
@RequestMapping(method=RequestMethod.POST) // at method level for post
@RequestMapping(method=RequestMethod.GET) // at method level for get
请参阅此链接:
https://howtodoinjava.com/spring/spring-mvc/spring-mvc-requestmapping-annotation-examples/