私は、データを取り込もうとしているEquipmentテーブルを持っています。このテーブルには、1つの自動増分IDと製造者列があります。hibernateを使用してデータをテーブルに取り込む正しい方法
すべてのメーカーデータをmanufacturerListというリストに保存しました。
次に、リスト全体をループし、各エントリに対して、そのエントリを持つ新しいEquipmentオブジェクトを作成し、変数tempに格納します。同じループで、私は休止状態のセッションを使用して私のテーブルにtempを保存しようとします。しかし
、私はこれを実行すると、私はこのエラーを取得しています
を閉じています?java.lang.IllegalStateException:セッション/ EntityManagerのは、Hibernateを使用しながら、このループを実装する正しい方法は何ですか
SessionFactory factory = new Configuration()
.configure("hibernate.cfg.xml")
.addAnnotatedClass(Equipment.class)
.buildSessionFactory();
Session session = factory.getCurrentSession();
try{
List<String> manufacturerList = new List<String>();
//populate the list here
//...
for (String manufacturer:manufacturerList) {
System.out.println(manufacturer);
Equipment temp = new Equipment(manufacturer);
session.beginTransaction();
session.save(temp);
session.getTransaction().commit();
}
} catch (IOException e) {
e.printStackTrace();
} finally {
factory.close();
}
ありがとうございます。
迅速な対応をありがとうございます。私は自分の投稿を編集してセッション取得を組み込んだ。しかし、もともと私のコードでEntityManagerを使用しなかったので、それを修正するために私の既存のコードに何ができますか? – 000000000000000000000