У вас должно быть две разные сущности, например, сущность AppUser сущности пользователя, каждая из которых указывает на разные таблицы, подобные этой, при условии, что имена этих двух таблиц users
и app_users
:
@Entity
@Table(name="users")
public class User extends SuperUser {...}
и
@Entity
@Table(name="app_users")
public class AppUser extends SuperClass {...}
Конечно, чтобы избежать дублирования кода, вы можете поместить поля таблицы в суперкласс с именем SuperClass
, например:
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public class SuperUser {
@Id
private Long userId;
private String firstName;
private String lastName;
// getters and setters, constructors
}
После того, как вы необходимо создать два репозитория для каждого класса сущностей:
public interface UserRepository extends JpaRepositories<User, Long> {
}
public interface AppUserRepository extends JpaRepositories<AppUser,Long> {
}
ПРИМЕЧАНИЕ: В заключение sh вообще не рекомендуется иметь две таблицы с одинаковыми полями.