在Micronaut中尝试java泛型类的依赖注入
接口
public interface IRequestHandler<C, R> {
R handler(C c);
}
依赖注入
@Singleton
public record ServiceBus(IRequestHandler<C, R> iRequestHandler) implements IServiceBus{
@Override
public <C, R> R send(C c) {
return iRequestHandler.handler(c);
}
}
接口
public interface IServiceBus {
<C,R> R send(C c);
}
实施
public class ProductController {
public ProductController(IServiceBus iRequestHandler){
_iserviceBus= iRequestHandler;
}
public Mono<?> get(ProductSearchCriteriaCommand searchCriteria) {
var item = _iserviceBus.<CreateProductCommand,CreateProductCommand>send(new CreateProductCommand());
return null;
}
}
对我来说,问题是在ServiceBus类上,我如何传递公共记录ServiceBus的类型
@Singleton
public class CreateProductCommandHandler implements IRequestHandler<CreateProductCommand, CreateProductCommand> {
@Override
public CreateProductCommand handler(CreateProductCommand createProductCommand) {
return null;
}
}
@Singleton
public record DeleteProductCommandHandler() implements IRequestHandler<DeleteProductCommand,DeleteProductCommand> {
@Override
public DeleteProductCommand handler(DeleteProductCommand deleteProductCommand) {
return null;
}
}
当我呼叫iserviceBus时。
同样,如果我调用iserviceBus。
您错误地定义了IServiceBus接口:
public interface IServiceBus {
<C,R> R send(C c);
}
应该是:
public interface IServiceBus<C,R> {
R send(C c);
}
我有基类和,它们有多个实现。但是,每个参数化类型只有一个实现,因此应该能够确定需要哪个子类。 在将第二个参数添加到基类和(从而添加到它们的所有子类)之前,这实际上是有效的。但是在添加了这些之后,下面是Spring初始化期间的错误: UnsatisfiedDependencyException:创建名为“My App”的bean时出错:通过字段“x1”表示的未满足的依赖项;嵌套异常为org.spri
Dependencies serve many different purposes. Some dependencies are needed to build your project, others are needed when you’re running your program. As such there are a number of different types of dep
我在父POM中声明 此外,儿童pom使用 一切正常吗?但是当我在type = pom中使用这种依赖关系时 我有错误 如何在dependencyManagement中用type = POM $ { Jboss-javaee-7.0 . version }声明一个依赖项如果我在根中带有Jboss-javaee-7.0,那么运行
我正在尝试用Guice注入泛型类型。我有存储库 所以当我创建光标时
如何获取这个类的类型?对于上下文,我使用ModelMapper,我需要类类型T从S转换为T。 背景: 我已经尝试了N种方法,其中我放置了“//一些方法来获取类型”,但没有任何效果。例如: 或
问题内容: Spring在以下方面很好地支持JUnit:使用和注释,事情看起来非常直观 该测试将能够在Eclipse&Maven中正确运行。我想知道TestNG是否有类似的东西。我正在考虑迁移到“下一代”框架,但没有找到与Spring测试匹配的对象。 问题答案: 它也可以与TestNG一起使用。