java - 如何使用 spring 注入(inject)或 Autowiring Class 类型?

标签 java spring

如何在 Spring 中连接这个类。

1) 注释 2)XML

注意:我已经可以连接其他类,只是不确定如何在这种情况下连接类

Class<? super Client >

enter code here


public class ClientData2 extends ContainerClass<Client>
{
  public ClientData2(Class<? super Client> type)
        throws IllegalArgumentException
  {
    super(type);
  }
}

最佳答案

如果您有一个 Class 类型的 bean,它与其他所有内容相同 - 使用 @Autowired/@Inject(以及可选的 @Qualifier)

如何创建这样的bean?多种方式:

  • xml - 使用 factory-method="forName"constructor-arg 传递 java.lang.Class
  • 使用生成Class对象的FactoryBean
  • java 配置

但是,有点奇怪的是,您需要一个 Class 对象作为 bean - 您不能在其中注入(inject)任何依赖项。也许您可以简单地注入(inject)类名(使用 @Value("${class.name}")),然后在 @PostConstruct 方法中使用 Class.forName(..)

关于java - 如何使用 spring 注入(inject)或 Autowiring Class 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8277228/

相关文章:

java - 重新启动 Java Spring Boot 应用程序

java - Hibernate 在创建后立即加载对象

Spring+JavaMail 发送超时

java - 将短数组转换为字节数组和将字节数组转换为短数组

java - 是否有 API 方法可以将 BigDecimal(秒) 转换为年、月、日、小时、分钟、秒?

java - 如何使用 Chrome Chromedriver 79 和 Selenium Java 下载 .xml 文件时隐藏警告 "This type of file can harm your computer"

java - 根据优先级重新排列数组

java - 仅在特定 URL 上调用自定义 Spring Security 过滤器

java - 在java中使用自定义比较器在数组中搜索

java - Spring配置-Arraylist的可选字段