Java 如何在spring boot中为泛型类提供类类型?
我想创建一个小框架,并想提供一些默认类,当用户不提供实现类时,应该加载这些类 这种结构应类似于Java 如何在spring boot中为泛型类提供类类型?,java,spring,generics,spring-boot,Java,Spring,Generics,Spring Boot,我想创建一个小框架,并想提供一些默认类,当用户不提供实现类时,应该加载这些类 这种结构应类似于弹簧靴 问题:我想创建的许多类都应该是泛型的,只需要用户定义类类型 无论如何,这迫使用户显式地实现这些类中的每一个,并提供类类型 我有什么办法可以解释一下吗?用户如何提供应该在泛型上使用的类类型,而不必显式实现泛型类?可能吗 框架: @Configuration public class AppConfig { @Bean @ConditionalOnMissingBean p
弹簧靴
问题:我想创建的许多类都应该是泛型的,只需要用户定义类类型
无论如何,这迫使用户显式地实现这些类中的每一个,并提供类类型
我有什么办法可以解释一下吗?用户如何提供应该在泛型上使用的类类型,而不必显式实现泛型类?可能吗
框架:
@Configuration
public class AppConfig {
@Bean
@ConditionalOnMissingBean
public BaseValidator<T extends MyReq> defaultValidator() {
return new BaseValidator<T extends MyReq>();
}
}
//我希望防止用户必须实现每个泛型类,如下所示:
@Component
public class MyValidator extends BaseValidator<CustomReq> {
}
@组件
公共类MyValidator扩展了BaseValidator{
}
用户是否可能只提供了
CustomReq.class
,并且BaseValidator
会自动实例化所提供的类类型?您可以使用class
构造函数参数来克服它,如下所示:
public class BeanPropertyRowMapper<T> implements RowMapper<T> {
private Class<T> mappedClass;
public BeanPropertyRowMapper(Class<T> mappedClass) {
initialize(mappedClass);
}
}
公共类BeanPropertyRowMapper实现行映射器{
私有类mappedClass;
公共BeanPropertyRowMapper(类mappedClass){
初始化(mappedClass);
}
}
public class BeanPropertyRowMapper<T> implements RowMapper<T> {
private Class<T> mappedClass;
public BeanPropertyRowMapper(Class<T> mappedClass) {
initialize(mappedClass);
}
}