22 Mart 2018 Perşembe

JSR 330 @Inject Anotasyonu

Giriş
Şu satırı dahil ederiz.
import javax.inject.Inject;
JSR 330 ile @Inject, @Named, @Qualifier, @Scope, @Singleton anotasyonları ve Provider arayüzü geliyor. Hepsi javax.inject isim alanında.

Örnek
Şöyle yaparız.
public class GeneralFormFactory implements Supplier<GeneralForm> {

    private final HttpServletRequest request;

    @Inject
    public GeneralFormFactory(HttpServletRequest request) {
        this.request = request;
    }

    @Override
    public GeneralForm get() {
        GeneralForm result = new GeneralForm();
        return result;
    }
}
Örnek
Şöyle yaparız.
@Path("/example")
public final class ExampleResource {

  private final Dependency dependency;

  @Inject
  public ExampleResource(final Dependency dependency) {
    this.dependency = Objects.requireNonNull(dependency);
  }

  @GET
  @Produces(MediaType.APPLICATION_JSON)
  public Example getExample() {
    return this.dependency.giveExample();
  }

}

Hiç yorum yok:

Yorum Gönder