当前位置: 首页 > 知识库问答 >
问题:

Autowired未能将服务加载到班级

长孙淳
2023-03-14

当我对服务进行操作时,我收到了一个空指针异常,因为我的服务没有被Autowired到类中。我在这个应用程序中实现了与其他类完全相同的类的存储库和服务,我以前没有遇到过这个问题。事实上,这个类确实警告了Autowire的问题,但我不知道如何修复它们:

autowired成员必须在有效的spring bean中定义

同样,这与其他类的设置相同,我没有这个问题。在服务类中,它抱怨存储库不能被带入构造函数,因为有多个相同类型的bean。我的另一个服务类也显示了这个警告,但没有问题被带入类并进行操作。下面的定义,请要求任何其他上下文,这将是有帮助的。

//TransactionCategoryRepository.java
@Repository("transactionCategoryRepository")
public interface TransactionCategoryRepository extends 
CrudRepository<TransactionCategory, Integer> {
}

--

//TransactionCategoryService.java
@Service("transactionCategoryService")
public class TransactionCategoryService {

private TransactionCategoryRepository transactionCategoryRepository;

@Autowired
public TransactionCategoryService(TransactionCategoryRepository repository) {
    this.transactionCategoryRepository = repository;
}

public void saveTransactionCategory(TransactionCategory transactionCategory) {
    transactionCategoryRepository.save(transactionCategory);
}
}

--

//Utilities.java
public class PlaidUtilities {

private Logger logger = 
LoggerFactory.getLogger(PlaidUtilities.class.getSimpleName());

private PlaidClient mPlaidClient;

@Autowired
TransactionCategoryService mTransactionCategoryService;
...

multiple bean警告在TransactionCategoryService.java的Respository中抛出,而Autowired定义警告在utilities.java中抛出。稍后在utilities.java中,当对MTransactionCategoryService进行操作时,会出现中断空指针异常错误。

共有1个答案

柴晔
2023-03-14

除非您需要它们,否则请将名称从@service@repository注释中删除。我发现这只会让事情变得尴尬。

另一件可能错误的事情是,你没有扫描这些包裹。您可以通过将引导应用程序属性更改为@springbootapplication(ScanBasePackages={“your.package.here”})在主类中更改此属性

看看这个问题,他们详细说明了它

 类似资料:
  • 我有一个类用来上传文件作为服务,比如symfony文档。https://symfony.com/doc/current/controller/upload_file.html#creating-上传服务 我使用Symfony 5。 当我在main config/services.yaml中声明服务时,这项工作正常。 但是我有一个文件管理包,我想把服务声明放在这个包中:App/AD/Explorer

  • 你好,作为角2学习项目的一部分,我正在创建一个测试应用程序。 我试图急切地加载一个名为的模块,但是,出现以下错误: 错误:(SystemJS)XHR错误(404未找到)加载http://localhost:3000/app/core.js错误:XHR错误(未找到404)加载http://localhost:3000/app/core.js在XMLHttpRequest。wrapFn[as _onr

  • 我有一些UserService对用户实体进行操作。我创建了自己的注释和ConstraintValidator类作为实现 我需要将UserService注入到ConstraintValidator中。而且,正如spring文档所说,在注册bean之后: 不幸的是,它对我没有作用。我在字段(在实现ConstraintValidator的类内)使用NullPointerException累加stackt

  • 我正试图加载Admob原生广告。以前(在应用程序更新之前)广告经常显示,但现在它们不显示了。我已经在下面发布了代码、xml和Logcat。 代码 洛克卡特

  • 数据文件包含记录,其中每个值由每个记录的制表符分隔。 服务器A和B都使用Db2 V9.5

  • 我正在尝试从ldap服务器到liferay的身份验证。我的要求是使用screename登录到liferay。 当我使用来自ldap服务器的用户登录时,会出现以下异常。 有人能帮我解决这个问题吗?