我正在学习与 MongoDb 连接的 SpringBoot,我正在尝试准备小项目,但是我不明白为什么我仍然有一个例外:
org.springframework.beans.factory.UnsatisfiedDependencyException:在文件 [C:\MoviesManager\target\classes\com\manager\MovieController.class] 中定义名称为“movieController”的 bean 创建时出错:通过构造函数参数 0 表示的不满足的依赖;嵌套异常是 org.springframework.beans.factory.BeanCreationException:创建名为“movieRepository”的 bean 时出错:调用 init 方法失败;嵌套异常是 org.springframework.data.mapping.PropertyReferenceException: 找不到类型 Movie 的属性名称!
我的 MovieController 或 MovieRepository 类似乎出了点问题。我应该使用所有注释,但是我无法启动应用程序。请你帮助我好吗?
这是我的课:
@RestController
@RequestMapping("/movie")
public class MovieController {
@Autowired
private MovieRepository movieRepository;
public MovieController(MovieRepository movieRepository){
this.movieRepository = movieRepository;
}//some CRUD methods
@Repository
public interface MovieRepository extends MongoRepository<Movie, String>{
public Movie findOneByName(String name);
}
您定义了一个查询方法 findOneByName,但显然您的 Movie 类没有调用属性name
(该类必须至少定义一个 get 方法)。
如果你有一个name
属性,但它是你的 ID(用 注释@Id
),我相信你也不能像这样定义自定义查询方法,但你可以使用预定义的findById()
代替(或findOne
在 Spring Data 1.x 中)。
如果这不能解决您的问题,请显示 Movie 类。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句