我需要一次显示一个包含大约 1300 个角色的大表。(我知道我应该使用数据滚动,但我的用户希望一次查看整个表格。)该表格显示 4 列。其中两列来自对象,而另外两列来自原始对象中的引用对象。我需要找到最好/有效的方法来做到这一点。我目前有这个工作,但是当我重新加载表时,它会出现内存不足的错误。我认为这是由内存中大量冗余数据引起的。
- 创建一个视图对象,存储库将只填写所需的字段。
- 任何其他建议。
以下是对象:
public class Database extends EntityObject {
private Long id;
private String name;
private String connectionString;
private String username;
private String password;
private String description;
// getter and setters omitted
}
public class Application extends EntityObject {
private Long id;
private String name;
private String fullName = "";
private String description;
private Database database;
private List<Role> roles = new ArrayList<Role>(0);
// getter and setters omitted
}
public class Role extends EntityObject {
private Long id;
private String name;
private String nameOnDatabase;
private Application application;
// getter and setters omitted
}
我需要从角色列表中显示的是:
角色 ID、角色名称、角色应用程序名称、角色应用程序数据库名称