Inferred type 'S' for type parameter 'S' is not within its bound; should extend......

前言

项目中出现的问题真的是挺多的,一些意想不到的问题都能出现,只能一点点耐着性子去解决,下面跟大家分享一下我遇到的问题!

这个问题是在SpringBoot整合JPA的时候遇到的,不知道怎么回事,就突然报错了,都可以“点儿”出来,说明这个东西是存在的,但是就是一直报红,所以就开始寻找解决方案!

解决过程

我的Controller中的代码:

@RestController
public class UserController {

    @Autowired
    UserRepository userRepository;

    @GetMapping("/user/{id}")
    public User getUser(@PathVariable("id") Integer id){
        User user = userRepository.findOne(id);
        return user;
    }


    @GetMapping("/user")
    public User insertUser(User user){
        User save = userRepository.save(user);
        return save;
    }
}

出现错误,报红的地方:
在这里插入图片描述
改正方法:将报红的地方,也就是userRepository.findOne(id)改成userRepository.findById(id).orElse(null),如下代码:

@RestController
public class UserController {

    @Autowired
    UserRepository userRepository;

    @GetMapping("/user/{id}")
    public User getUser(@PathVariable("id") Integer id){
        User user = userRepository.findById(id).orElse(null);
        return user;
    }


    @GetMapping("/user")
    public User insertUser(User user){
        User save = userRepository.save(user);
        return save;
    }
}

总结

以上是我总结出来的解决方案,对我的项目帮助和平时积累,帮助挺大的,自己在一点点进步,挺开心的,希望这篇文章可以帮助大家,同时,也希望留下您来过的痕迹!!!

发布了140 篇原创文章 · 获赞 106 · 访问量 19万+

猜你喜欢

转载自blog.csdn.net/tigaobansongjiahuan8/article/details/96924214
今日推荐