У меня есть таблица в моей базе данных MYSQL, которая не имеет первичного ключа, но имеет уникальный ключ в двух столбцах. При использовании средства обратной инженерии MyEclipse Hibernate для создания сопоставления для этой таблицы он генерирует два класса: один для имени после самой таблицы и один с суффиксом «Id». Похоже, что большинство полезных методов оказались в классе Id, поэтому, похоже, это тот, который вы создадите и сохраните для сохранения данных. Я могу оценить тот факт, что класс Id создан для того, чтобы представлять уникальную строку в объекте table/mapped, но зачем использовать его для разделения на два класса, и что тогда использовать не-Id -высокий класс?Почему MyEclipse Hibernate Reverse-engineering создает несколько классов при сопоставлении определенных таблиц?
Мой коллега утверждает, что вы можете сделать то же самое только с одним классом и издеваться над использованием обратной инженерии для этих таблиц, у которых нет первичного ключа. Я, с другой стороны, полагаю, что разработчики MyEclipse намного умнее меня и что есть действительно веская причина сделать это таким образом. Здесь?