Actually, yes. JPQL, the generally SQL-like query language in the Java Persistence API, lets you write joins through foreign key references (as most joins are, although of course not all) as if they were object property references. So instead of:
select u.user_id
from User u
join Company c using (company_id)
join Country k using (country_id)
where k.code = 'br'
You would write something like:
select u from User u where u.company.country.code = 'br'
That's pretty neat. I wish i could do that in SQL.
If you want to fetch data from joined entities, then you still need to name them in an explicit join, but it's still easier than in SQL:
select u, k.code from User u join u.company.country k where u.creation_date = current_date