gpt4 book ai didi

java-ee-6 - CDI Producer(s) 同一类的不同版本

转载 作者:行者123 更新时间:2023-12-04 04:59:33 24 4
gpt4 key购买 nike

我有一个生成 SimpleDateFromat 对象的 JEE6 简单生产者类:

public class myProducer {

@Produces public SimpleDateFormat produceASimpleDateFormat(final InjectionPoint injectionPoint)
{
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
}
}

我想要:
  • 创建一个新的生产者,并且能够以某种方式在类中指定 DateFormat 被注入(inject)的位置或...
  • 编辑我现有的 Producer 以根据传递的参数生成不同的 SimpleDateFormat。

  • 我应该如何最好地实现它?

    最佳答案

    听起来像是限定词的用途。

    你可以

    @Produces
    @TypeA
    public SimpleDateFormat produceTypeAFormat() {
    return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    }

    @Produces
    @TypeB
    public SimpleDateFormat produceTypeBFormat() {
    return new SimpleDateFormat("MM-dd-yyyy HH:mm:ss");
    }

    或者在您读取注入(inject)点以读取带有内容的限定符时更动态的东西,例如 @Format("yyyy-MM-dd HH:mm:ss")您可以在其中阅读注入(inject)点上的限定符。

    关于java-ee-6 - CDI Producer(s) 同一类的不同版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16309530/

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