我尝试抽象我的特定领域的问题,以银行账户,假设以下情况:我应该如何架构我的域模型
- 我有一定的客户的银行密码登录。
- 每个客户可以拥有多个属于同一登录名的银行账户。
- 每个银行账户可以有数千笔交易。
我设计的类结构folows(简体):
public class Login
{
private List<Account> _bankingAccounts;
....more fields, ctor, getters, setters...
}
public class Account
{
private List<Transaction> _transactions;
....more fields, ctor, getters, setters...
}
public class Transaction
{
String _comment;
....more fields, ctor, getters, setters...
}
好了,但如果我有让我们说20的帐户,每个人都有10000交易,我从数据库装载有将整个模型是一个大量的记忆,即使我不知道客户是否需要所有这些交易。
我想建立一个更加简化的模型是这样的:
public class Login
{
private List<SimpleAccount> _bankingAccounts;
....more fields, ctor, getters, setters...
}
public class SimpleAccount
{
....more fields, ctor, getters, setters...
}
public class Account
{
private List<Transaction> _transactions;
....more fields, ctor, getters, setters...
}
public class Transaction
{
String _comment;
....more fields, ctor, getters, setters...
}
然后我将加载与简化的帐户(不包含所有事务)一个账户模式,只有我的用户请求看交易一个特定账户我将加载这个单一的整个账户对象。
那样可以吗?有更好的方法吗?
对于一长串事务处理,您可以执行服务器端分页 – JohnnBlade 2012-07-30 07:46:22