再现“;SQL表”;在课堂上
本文关键字:课堂 SQL 再现 | 更新日期: 2023-09-27 18:26:20
我有一组类City
、Country
、Border
。
每个类都有相互引用:
- 城市引用父国家
-
国家引用通过
List<City>
包含的城市 -
国家通过
List<Country>
引用其他边境国家 - Country引用Border类,在2个Country实例之间共享
我认为上面的问题导致了我正在使用的程序中的一些问题:加载缓慢和内存问题。
我不太清楚到底发生了什么。我一直读到"循环引用"是不好的做法。有没有其他方法可以将类似SQL的类模式映射到常规类?
我真的想避免调用方法public City GetCities(){...}
,因为每秒可能会有120000个这样的调用。所以我需要这些是cached
,而不是动态请求的。
有人有主意吗?
听起来你用来访问数据库中项目的任何东西都执行了太多的获取,而且到处都是重复的对象。
表中的数据是否足够小,可以完全缓存?如果是这样,您可以在应用程序启动时将所有内容预加载到字典中,然后查询这些字典中的关系。