发布网友
共3个回答
热心网友
你好.
可以放在业务层进行缓存.
根据职责分配原则:
数据层只需要完成数据操作就可以,不适合缓存.
界面层只需要显示和交互,也不适合缓存.
当然你也可以增加一个层,专门做缓存功能.业务层去调用缓存层.
下面就是关键问题:当数据缓存了的话怎么在更新之后读取出来是最新的?
可以在业务层对数据做了:"修改","删除"操作之后,主动通知缓存层去更新缓存.
按这个思路去实现可能代码复杂些,但思路应该是可行的.
祝好!
热心网友
楼上说的非常之笼统,谁说过业务层就不能有缓存?
关键是看你的缓存是什么,是缓存数据还是对象还是显示的内容。
数据,有数据缓存,数据库也有数据库的数据缓存。
对象也有对象的缓存,业务层如果有这样的需求,进行了这样的设计又有何不可?
UI层也有缓存技术。ASP.NET的话,本身就直接支持两种缓存技术。
热心网友
我做过的两个项目,缓存都是放在数据层的,毕竟最原始的数据都是在数据层这里,数据到了业务层和表示层后可能多少都会有处理.
保持数据同步,就是在修改,删除时判断缓存中有没有当前数据,有的话就把缓存中的数据也同步更新就可以了