我正在编写一个MMORPG服务器仿真器(爱好项目),现在遇到了数据访问层的问题。由于性能问题,我不能使用ORM。我已经阅读了很多关于仓储模式的文章,但似乎并不适用于我的项目,因为我需要像 (player db) GetAllByLevel(...),GetByName(...)等方法。我希望我的应用程序具有数据库不可知性(目前正在使用SQL Server,但稍后我想加入对MySQL的支持)。哪种数据访问模式适合我的项目?
抱歉我的英语不太好。
编辑
还有一个问题。我读到过仓储模式是基于聚合根操作的。我有3个表:player、player_friend 和 player_chest。Player是聚合根,如果我没错的话,我应该只创建一个仓库(PlayerRepository),它可以拥有像 GetFriends([player id], ...)、GetChest([player id], ...) 等方法。是这样吗?
抱歉我的英语不太好。
编辑
还有一个问题。我读到过仓储模式是基于聚合根操作的。我有3个表:player、player_friend 和 player_chest。Player是聚合根,如果我没错的话,我应该只创建一个仓库(PlayerRepository),它可以拥有像 GetFriends([player id], ...)、GetChest([player id], ...) 等方法。是这样吗?