java JPA Repository @Autowired不工作并返回NullPointerException

zbdgwd5y  于 2023-04-04  发布在  Java
关注(0)|答案(1)|浏览(119)

我有一个简单的模型和存储库,我想测试“保存”方法:

  1. @Data
  2. @NoArgsConstructor
  3. @RequiredArgsConstructor
  4. @Entity
  5. @Table(name = "TEST")
  6. public class TestModel {
  7. @Id
  8. @NonNull
  9. @Basic(optional = false)
  10. @Column(name = "id")
  11. private String id;
  12. @NonNull
  13. @Basic(optional = false)
  14. @Column(name = "testValue")
  15. private String testValue;
  16. }
  17. @Repository
  18. public interface TestRepository extends JpaRepository<TestModel, String> {
  19. }

...在主类上:

  1. @SpringBootApplication
  2. public class DemoApplication {
  3. @Autowired private static TestRepository testRepository;
  4. public static void main(String[] args) {
  5. SpringApplication.run(DemoApplication.class, args);
  6. TestModel testModel = new TestModel("1", "randomValue");
  7. testRepository.save(testModel);
  8. }
  9. }

当我尝试使用存储库保存一个简单的对象时,它给了我指向自动连接存储库的NullPointerException。
我使用了很多注解,比如ComponentScan(指向仓库包),EntityScan(指向实体包)EnabledAutoConfiguration,但没有一个对我有用。
我使用Sping Boot 2.7.10,Spring Data JPA和Spring Web作为pom.xml中的依赖项。
有人知道它应该是什么吗?谢谢!

tquggr8v

tquggr8v1#

您不能使用@Autowired将依赖项注入Sping Boot 中的静态字段。

相关问题