gpt4 book ai didi

java - Spring 3.1 Autowiring 具有多个泛型参数的泛型类

转载 作者:太空宇宙 更新时间:2023-11-04 14:09:10 26 4
gpt4 key购买 nike

我正在尝试实现一个通用的 DAO,但我遇到了一个问题......

这是我的问题:

public class ClassA<T,P,S> extends JpaRepository<T, Integer>{
dostuff<P,S>(){...}
}

@Autowired
private ClassA<BeanA,BeanB,BeanC> classA;

此时,我在编译时收到此错误:

Error creating bean with name 'ClassA': FactoryBean threw exception on object creation; nested exception is java.lang.IllegalArgumentException: Not an managed type: interface java.lang.Object

根据我在这个网站上看到的内容,Spring 4.0 应该可以完成这些工作,但我正在使用 Spring 3.1 并且无法升级......

也许我的测试可以帮助您回答我的问题:

public class ClassA extends JpaRepository<BeanA, Integer>{
dostuff<BeanB,BeanC>(){...}
}

@Autowired
private ClassA classA;

public class ClassA<T extends BeanA,P extends BeanB, S extends BeanC> extends JpaRepository<T, Integer>{
dostuff<P,S>(){...}
}

@Autowired
private ClassA<BeanA,BeanB,BeanC> classA;

工作得很好。

提前感谢您的建议;)

最佳答案

例如,尝试通过为指定存储库显式指定限定符来 Autowiring

@Autowired
@Qualifier("classA")
private ClassA<BeanA,BeanB,BeanC> classA;

关于java - Spring 3.1 Autowiring 具有多个泛型参数的泛型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28547210/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com