Я использую JPA и Hibernate для своего проекта. У меня есть два класса с одинаковыми именами , но в разных пакетах .Это:
@Entity(name = "X_USER")
@Table(name = "X_USER")
public class User {
и:
@Entity
@Table(name="Y_USER")
public class User {
Я создавал поисковый запрос с помощью: .getSimpleName ()
, но это не сработало, потому что их простые имена совпадают. Я изменил его на .getName ()
.
Тем не менее, это все еще сбивает с толку, к какому пользователю
возвращаться.
РЕДАКТИРОВАТЬ:
У меня есть это:
SELECT_BY_PROPERTY_QUERY = "SELECT p FROM :CLASS: p WHERE p.:PROPNAME:=?";
, а у меня это:
SELECT_BY_PROPERTY_QUERY.replaceFirst(":CLASS:", clazz.getName()).replaceFirst(":PROPNAME:", propertyName);
, и когда я его отлаживаю, он делает что-то вроде:
Select p from User p Where p.name=?
Это все еще Пользователь
, и это не так включает информацию о пакете и возвращает мне неправильный класс пользователя
.