Olá pessoal,
Estou com um problema estranho no hibernate. Estou realizando consultas através da API Example e quando o example é uma chave primária, o hibernate simplesmente ignora e retorna todos os registros da tabela. Já testei com os demais campos e funcionam corretamente. Não sei que o erro é na implementação da busca ou se na anotação da classe.
Estou utilizando o hibernate faz pouco tempo, ainda não conheço as peculiaridades, então, se alguém souber porque acontece isso... =/
@Entity
@Table (name = "designer")
public class Designer {
private String name;
private String login;
private String password;
private List<Product> products = new ArrayList<Product>();
public Designer(){}
public Designer(String name, String login, String password) {
super();
this.name = name;
this.login = login;
this.password = password;
}
public Designer(String login, String password) {
super();
this.login = login;
this.password = password;
}
public Designer(String login) {
super();
this.login = login;
}
@Column(name = "name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Id
@Column(name = "login")
public String getLogin() {
return login;
}
public void setLogin(String login) {
this.login = login;
}
@Column(name = "pass_word")
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@OneToMany(mappedBy="ds")
public List<Product> getProducts() {
return products;
}
public void setProducts(List<Product> products) {
this.products = products;
}
public void addProduct(Product p){
products.add(p);
}
//demais metodos
}
protected Example getExample(T entity){
Example example = Example.create(entity);
example.enableLike(MatchMode.EXACT);
example.ignoreCase();
return example;
}
public List<T> getEntitiesByExample(T entity) {
Example example = getExample(entity);
return session.createCriteria(classe).add(example).list();
}
