Я объясню проблему с примером.
У меня есть объект Vehicle, который имеет название модели и марку. Когда марка указана, необходимо указать соответствующее транспортное средство. когда даны как марка, так и модель, следует указать подходящие транспортные средства.Hibernate Примеры запросов
Например: Существует объект под названием «Транспортное средство». У него есть прокси, называемый makeModel, чье имя Entity: MakeModel
. MakeModel имеет прокси, которые «делают» и «модель», чья сущность названия модели и «Модель» Make.Both Entititiyes и «Make» имеют переменную типа String «name'.Here классы
class Vehicle{
private Integer vehicleId;
private MakeModel makeMOdel;
//getters and setters
}
class MakeModel {
private Make make;
private Model model;
//getters and setters
}
class Make{
private Integer mid;
private String make;
}
class Model{
private Integer mdlid;
private String modelName;
}
Вот как я попытался получить список транспортных средств. Здесь session
- сеанс Hibernate.
Criteria cr= session.createCriteria(Vehicle.class);
MakeModel mkmd=new MakeModel();
if(/* if only the make is give */){
Make mk=new Make();
mk.setMake("Toyota");
mkmd.setMake(mk);
}
else if(if both make and and model given){
Make mk=new Make();
mk.setMake("Toyota");
mkmd.setMake(mk);
Model md=new Model("Venus");
mkmd.setModel(md);
}
cr.createCriteria("makeModel").add(Example.create(mkmd));List l=cr.list();
Но это возвращает все автомобили. Я хочу, чтобы все транспортные средства использовали критерии спящего режима, а не HQL.
Аналогичный вопрос можно найти here и указан this. Любой из нас дает мне знать, где не так, и как получить список транспортных средств в соответствии с заданными критериями.
И вопрос в том, что? Ответ, на который вы ссылаетесь, является хорошей отправной точкой. Что вы пробовали? И что означает «я не могу решить проблему»? – home
Получение подходящих критериев для спящего режима для этого не так сложно, но было бы намного проще, если бы вы могли предоставить код для объектов Vehicle и MakeModel. –
@ Хоум. Спасибо за внимание, и вопрос был отредактирован всеми кодами. –