1

管理された BackBean にメソッド getStudents があり、getstudents を呼び出しています。これにより、データベースが呼び出され、データがフェッチされます。UI は適切に表示されますが、ページの読み込みに時間がかかりすぎるため、パフォーマンスの問題が発生します。このパフォーマンスの問題を処理する方法を教えてください。

4

1 に答える 1

3

getter メソッドでビジネス ロジックを実行しないでください。メソッドでリストを初期化する@PostConstructか、getter で遅延読み込みを行う必要があります。

private List myList;

@PostConstruct
public void init() {
  // init my List
}

// getter and setter

@PostConstructメソッドは、マネージド Bean のインスタンス化後に呼び出されます。コンストラクターではなく、このメソッドで初期化することをお勧めします。バッキング Bean の有効期間中にリストを変更しているため、変更されたときにリストを更新する必要があります。ユーザーが作成したデータを追加するか、値を挿入した後にデータベースを再度呼び出すことを選択できます。これについて心配する必要があります。自動化はありません。

于 2013-03-12T07:54:00.313 に答える