0
GETはデータベース理由に当たった場合、私は---取得し、私のコードのload.Exampleがこれですとの違いを学ぶためにgetメソッドはいつデータベースにヒットしますか?
public class StudentTest {
public static void main(String[] args) {
SessionFactory sessionfactory=new Configuration().configure().buildSessionFactory();
Session session=sessionfactory.openSession();
Student student=new Student();
student.setName("Rajat");
student.setDate(new Date());
student.setCompany("Yash");
session.persist(student);
Transaction t1=session.beginTransaction();
session.getTransaction().commit();
student.setName("Prashant");
Student getStudent1=(Student)session.get(Student.class, 1);
System.out.println("-----------get------------------");
System.out.println(getStudent1);
session.close();
sessionfactory.close();
}
をしようとしています?出力は
Student [id=1, name=Prashant, company=Yash, date=Thu Apr 20 17:22:20 IST 2017]
ですが、データベースにはRajatという名前が保存されています。
フェッチされる実行されますセットを使用するときのロードは、要求されたセットのプロキシを提供しますラジャットです。上記の例でデータベースから実際のデータを取得するにはどうすればいいですか? – Prashant
ええ、System.out.println(getStudent1)行の前に同じデータを返します。ロードを使用している場合は、変数がproxingをオブジェクトに保持していません。データベースからのデータとそれを使用して、実際のデータを取得しています –
実際のデータはどうですか?データベーステーブルの名前はRajatで、出力はPrashantです。 – Prashant