2016-07-16 7 views
0

Hibernateセッションによってデータが遅延ロードされているときにJFrameマウスカーソルを変更し、待機モードに設定したいとします。私はそれをどのようにすることができますか?ありがとうございましたHibernate遅延ロード中にカーソルを変更

答えて

0

あなたの答えを与えるために追加/編集できるように、行ったことを示すためのコードが含まれている必要があります。あなたが遅延ローディングや積極的なロードをしたいかどうかのエンティティを宣言しながら、

あなたはそれを指定します。

しかし、私はあなたにそれを行う方法についての基本的なアイデアを与えるでしょう。

子要素をロードするときに、子要素にアクセスする前にカーソルを変更し、読み込みが完了したときに元の状態に戻すことができます。私はスレッドを使ってそれを実演しました。

//lets suppose this is your class and it is currently lazy loaded 
private Set<Child> children = parent.getChildren(); // Currently it doesn't contain anything because it is set to Lazy load 

とのこれはあなたがオブジェクトの代わりに、このの

public static void yourCurrentMethod() { 
    ... 

    children.size(); 
    children.iterator(); 

    ... 
} 

をロード怠け者方法です、あなたはあなたの方法をこのように書くことができるものとします

public static void yourCurrentMethod() { 
    ... 

    scroll.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));   
    SwingUtilities.invokeLater(new Runnable() { 
     children.size(); 
     children.iterator(); 
     scroll.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR)); 
    }); 

    ... 
} 

これらを参考にしてください詳細についての答え:
1. https://stackoverflow.com/a/21016898/2815219
2. https://stackoverflow.com/a/2192271/2815219