Quantcast
Channel: Programação - GUJ
Viewing all articles
Browse latest Browse all 33093

Injetar dependências para o GenericDao

$
0
0

@picklesdog70 escreveu:

Amigos....

Tenho um GenericDao que funciona bem..... mas gostaria de melhorá-lo.....

public abstract class GenericDao< T > implements IDao< T > {

@PersistenceContext
protected EntityManager em;

protected Class<T> clazz;

protected CriteriaBuilder builder;
protected CriteriaQuery<T> query;
protected Root<T> root;

public GenericDao(Class<T> clazz){
   this.clazz = clazz;
}
....

Gostaria de injetar os atributos

protected CriteriaBuilder builder;
protected CriteriaQuery<T> query;
protected Root<T> root;

Por que se tento iniciá-los no contrutor, tenho erro. Acredito por que o JPA ou Spring ainda não injetou o EntityManager através do @PersistenceContext.

Como gambiarra tenho um método que chamo a cada outro método do Dao:

protected void criteriaObjects() {
	this.builder = em.getCriteriaBuilder();
    this.query = builder.createQuery(clazz);
    this.root = query.from(clazz);
}


@Override
public T findById(int id) {

	criteriaObjects();
	....

Seria possível fazer isso?

Mensagens: 3

Participantes: 2

Ler tópico completo


Viewing all articles
Browse latest Browse all 33093


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>