[發明專利]一種包含數組結構的緩存方法有效
| 申請號: | 201711475847.5 | 申請日: | 2017-12-29 |
| 公開(公告)號: | CN107967368B | 公開(公告)日: | 2021-12-28 |
| 發明(設計)人: | 郭艷杰 | 申請(專利權)人: | 北京酷我科技有限公司 |
| 主分類號: | G06F16/835 | 分類號: | G06F16/835 |
| 代理公司: | 北京國標律師事務所 11753 | 代理人: | 姚克楓 |
| 地址: | 100080 北京市海淀區農大*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 包含 數組 結構 緩存 方法 | ||
本發明涉及一種包含數組結構的緩存方法,通過數據封裝類dbWapper獲取需要緩存的數據fmPersistentData,進而得到需要緩存的所有關鍵詞fmPersistentKeys,遍歷各關鍵詞fmPersistentKeys,當其為數組時,將其中的數值轉化為字典結構,并將其存入臨時數組,最后將臨時數組轉化為Json數據,通過KVC機制將Json數據和關鍵詞綁定,將Json數據返回給數據庫管理類DBManager進行緩存。本發明,對數組進行處理,將其轉換為便于緩存的結構后,再進行緩存處理,實現了包含數組結構情況時的緩存操作,提高了數據處理的兼容性和便利性,可作為緩存的輔助處理模塊,供需要應用的場景調用。
技術領域
本發明涉及數據緩存技術領域,具體說是一種包含數組結構的緩存方法。
背景技術
現有的iOS系統中,緩存是不支持數組結構的,因為數組是一個復雜結構,其中還有其他對象,其他對象也可能再包含數組。
在寫入緩存時,有些數據是不進行緩存的,例如:只要進行相應的設置,有些屬性是可以不緩存的,再例如:只讀屬性也是不緩存的。這些均是用戶可根據需要自行配置的。
發明內容
針對現有技術中存在的缺陷,本發明的目的在于提供一種包含數組結構的緩存方法,對數組進行處理,將其轉換為便于緩存的結構后,再進行緩存處理,實現了包含數組結構情況時的緩存操作,提高了數據處理的兼容性和便利性,可作為緩存的輔助處理模塊,供需要應用的場景調用。
為達到以上目的,本發明采取的技術方案是:
一種包含數組結構的緩存方法,其特征在于,包括如下步驟:
創建數據庫管理類DBManager,在其中增加一個模塊類Model,
在模塊類Model中初始化數據封裝類dbWapper,
通過數據封裝類dbWapper獲取需要緩存的數據fmPersistentData,
解析需要緩存的數據fmPersistentData,得到需要緩存的所有關鍵詞fmPersistentKeys,
遍歷各關鍵詞fmPersistentKeys,判斷關鍵詞對應的數值是否為數組,
如果不是則忽略,
如果是則按下述objtoDictionary步驟處理:
新建臨時數組,
遍歷關鍵詞對應的數組,判斷數組中各數值是否是baseModel的子類,
如果不是則忽略,
如果是則轉化該baseModel的子類的數值為字典結構,并將其存入臨時數組,
完成遍歷關鍵詞對應的數組后,將只包含基本數據結構的臨時數組轉化為Json數據,
通過KVC機制將Json數據和關鍵詞綁定,
將Json數據返回給數據庫管理類DBManager進行緩存。
在上述技術方案的基礎上,所述基本數據結構,包括:
整型int,
浮點型,具體包括單精度float、雙精度double,
字符型char。
在上述技術方案的基礎上,所述數據封裝類dbWapper,包括:
臨時數組創建方法table(),
插入數據方法insert(),
返回數據方法commit()。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京酷我科技有限公司,未經北京酷我科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711475847.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種地理信息加工處理系統
- 下一篇:一種緩存中數據轉換為數組結構的方法





