-1

IDは、車両のオブジェクトをデータベースに永続化するときに自動生成されます。IDを永続化せずに取得するにはどうすればよいですか?

コードは次のとおりです。

public class Vehicle{

    @Id
    @GeneratedValue
    int id;
    private int year;
    private String model;
    //getters, setters
}

アップデート

    public void updateVehicle(Vehicle vehicle) {

        em.getTransaction().begin();
        Vehicle vehicleDB = em.find(Vehicle.class, vehicle.getId());
        vehicleDB.setYear(vehicle.getYear());
        vehicleDB.setModel(vehicle.getModel());
        em.getTransaction().commit();
}
4

2 に答える 2

6

永続化の瞬間にデータベースによって生成されるため、できません。その前に、IDは定義されていません。

于 2012-12-29T17:15:25.723 に答える
-1

保存する前に取得することはできませんが、簡単な解決策は、オブジェクトを保存する前に、selectクエリで取得できることです。

于 2012-12-29T17:22:22.767 に答える