Question

JSR-299 (CDI) présente le (malheureusement nommé) concept d'une ressource: http://docs.jboss.org/weld/reference/1.0.0/en-US/html/resources.html#d0e4373

Vous pouvez penser à une ressource dans cette nomenclature comme un pont entre la marque Java EE 6 d'injection de dépendance (@EJB, @Resource, @PersistenceContext, etc.) et la marque de l'injection de dépendance de CDI.

Le sens général semble être que quelque part (et ce sera la racine de ma question), vous déclarez ce qui équivaut à une classe de pont: il contient des champs annotés à la fois avec @EJB Java EE ou annotations @PersistenceContext ou @Resource et CDI annotations @Produces. L'effet net est que Java EE 6 injecte un contexte de persistance, par exemple, où il est demandé, et CDI reconnaît que PersistenceContext comme injecté source pour les futures injections la ligne (traitées par @Inject).

Ma question est: quel est le consensus de la communauté - ou est-il un - sur:

  • ce que cette classe de pont devrait être nommé
  • où cette classe de pont doit vivre
  • s'il est préférable de localiser tout ce genre de choses dans une classe ou de faire plusieurs d'entre eux

...

De gauche à mes propres appareils, je pensais à déclarer une seule classe appelée CDIResources et à l'aide que comme un véritable lieu de relier DI Java EE avec DI CDI. De nombreux exemples font quelque chose de similaire, mais je ne suis pas certain qu'ils soient « justes » des exemples ou si c'est une bonne façon de le faire.

Merci.

Était-ce utile?

La solution

Cela semble très subjectif, mais I préfèrent faire plusieurs classes et I appel FooProducer une classe produisant un Foo.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top