Query - @NamedQuery

3 respostas
prymatta

Eai galera, boa tarde,

pesquisei algo do tipo aqui no fórum, mas não encontrei algo relacionado.

minha dúvida é a seguinte:

tenho um select parecido c/ o abaixo para a annotation NamedQuery, minha dúvida é se consigo chamar na estrutura do select uma função do meu banco de dados

Não encontrei exemplos que utilizassem estrutura parecida.

abs,

3 Respostas

renanreismartins

para chamar uma funcao do seu banco vc deve usar @NamedNativeQuery

abrasss

G

[b] eu tentei o seguinte código usando o namednativequery abaixo:

[/b]

@javax.persistence.Entity
@javax.persistence.Table(name="clientes")

@NamedNativeQuery(name="buscaclientes" ,
		query="SELECT cts FROM clientes cts " +
			  "WHERE funcaostring(nomecliente) ILIKE ?")
public class Clientes  {
....

na camada d persistencia coloquei assim:


		javax.persistence.Query query = em.createNamedQuery("buscaclientes");
		query.setParameter(1,"%"+nomecliente+"%");

		return query.getResultList();

mas dá o seguinte erro…
[color=red]
Exception in thread “main” java.lang.ClassCastException: java.util.Vector cannot be cast to model.Clientes
at dao.Main.main(Main.java:84)[/color]

podem me ajudar valeu

E

gustavojava tente fazer o seguinte.

Na @namedNativeQuery utilizar 3 atributos:

  • Name
  • Query
  • Resultclass

Use da seguinte maneira

@NamedNativeQuery(name="buscaclientes" , query="SELECT cts FROM clientes cts " + "WHERE funcaostring(nomecliente) ILIKE ?", resultClass = Clientes.class)

Criado 21 de setembro de 2011
Ultima resposta 26 de out. de 2011
Respostas 3
Participantes 4