выборка из двух таблиц в HQL

Есть две таблицы, мне нужно выбрать имя пользователя из таблицы users и все связанные с ним машины из таблицы autos. Я не могу понять, как правильно сделать запрос. Я перепробовал много способов и в конце концов запутался. Любая помощь приветствуется.

UserDAO

public List<User> find Users Auto(String name){
        Session session = Hibernate SessionFactory Util.getSessionFactory().open Session();
        String hql ="from Auto as us inner join User as u  where user_id = id";
        Query query = session.createQuery(hql);
        query.setParameter("name", name).list();
        List<User> users = (List<User>) query.list();

        return users;

Entities

User

@Entity
@Table (name = "users")
public class User {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;
    @Column(name = "name")
    private String name;
    //можно не указывать Column name, если оно совпадает с названием столбца в таблице
    private int age;

    @OneToMany(mappedBy = "user", cascade = CascadeType.ALL, orphanRemoval = true)
    private List<Auto> autos;

    public User() {
    }

    public User(String name, int age) {
        this.name = name;
        this.age = age;
        autos = new ArrayList<Auto>();
    }

    public void add Auto(Auto auto) {
        auto.set User(this);
        autos.add(auto);
    }

    public void remove Auto(Auto auto) {
        autos.remove(auto);
    }

    public List<Auto> get Autos() {
        return autos;
    }

Autos(List<Auto> autos) {
        this.autos = autos;
    }

Auto

@Entity
@Table(name = "autos")
public class Auto {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private int id;

    @Column (name = "model")
    private String model;

    
    private String color;


    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "user_id")
    private User user;

    public Auto() {
    }

    public Auto(String model, String color) {
        this.model = model;
        this.color = color;
    }

        
}

Ответы (0 шт):