Loading both types of persons should not be a problem. If your query can access common attributes you can do FROM Person p WHERE <whatever_person_criteria_you_have>
.
If your query need to use specific attributes of Employee
and SportsPerson
then you could execute 2 queries and put the result into a single List<Person>
.
Sorting/displaying that list depends on what data needs to be displayed or compared. In case you have to compare different data, you could always use a Comparator<Person>
which checks the actual class of the objects and maybe a wrapper which does the same to access the correct properties for display.