Boa tarde estou com o seguinte problema estou usando hibernate e eu estou tentando pegar o usuario pelo nome, porem ta dando erro nao intendi o motivo.
[code]public AppUser getUser(String login) {
try {
logger.info(“Obtendo usuário de login " + login
+ " do banco de dados.”);
Session session = HibernateUtil.getSession();
session.beginTransaction();
AppUser u = (AppUser) session.get(AppUser.class, login);
session.getTransaction().commit();
session.close();
logger.info("Usuário obtido com sucesso.");
return u;
} catch (Exception e) {
logger.error("Erro ao obter usuário com o login " + login
+ ". Motivo:\n" + e.getMessage());
}
return null;
}[/code]
erro dado pelo logger
Provided id of the wrong type for class br.com.md2net.gi.pojo.AppUser. Expected: class java.lang.Integer, got class java.lang.String
nesse método abaixo o segundo parametro deve ser um Integer e você está passando uma String
session.get(AppUser.class, login);
leia o erro veja:
Expected: class java.lang.Integer, got class java.lang.String
[]'sss
[quote=alberto_ribeiro]nesse método abaixo o segundo parametro deve ser um Integer e você está passando uma String
session.get(AppUser.class, login);
leia o erro veja:
Expected: class java.lang.Integer, got class java.lang.String
[]'sss[/quote]
eu sei mas num to intendendo o pq disso nao… eu to tentando pegar atravez da String. como eu fazer pra pegar pelo nome?
com esse método você não conseguirá mesmo, pois o segundo parametro é a pk no banco ou seja o id, agora se quiser pegar pelo nome procure algo sobre hql… ou criteria…
[]'s
[quote=alberto_ribeiro]com esse método você não conseguirá mesmo, pois o segundo parametro é a pk no banco ou seja o id, agora se quiser pegar pelo nome procure algo sobre hql… ou criteria…
[]'s[/quote]
é que eu nao to querendo criteria acho q pesa a query … mas de toda forma brigado