秘密缓存
Ⅰ iphone中视频缓存非wi-fi情况下怎么设置
非wifi情况就是使用蜂窝移动数据的情况。
有两种方法来设置:
1、通过iphone本身的设置菜单来设置,打开蜂窝移动数据开关,进入蜂窝移动数据菜单以后可以看到下面列了很多软件,可以设置是否允许这些软件使用蜂窝数据流量,也就是是否允许使用流量,如果选择的是否的话,在打开这些视频软件的时候就不会耗流量。
2、第二种就是直接打开视频软件,在视频软件里面设置,在软件里都有设置选项,可以直接设置是否在非WiFi下缓存视频。可以选择是或者否。
具体步骤如下:
1、打开手机“设置”,选择“蜂窝移动网络”
(1)秘密缓存扩展阅读:
iphone秘密功能
1输入关键字,就会把你记事本,短信里的相关条目全都搜出来,不管你删了没!解法:进入设置→通用→spotlight搜索→把不想搜到的勾选→去除。
2你可以设置你的iPhone输入法,将词组或缩写成任何你想要的单词。打开设置→通用→键盘→添加新的快键盘,但没有九宫格输入法
ps:从iOS7 Beta4起,国行iPhone可以在简体中文输入法中选择“九宫格”来开启九宫格输入。
3如果你想把一个网站的图像保存到你的手机中,点击并按住图片,直到弹出菜单,然后点击“保存图像”储存至手机。
4在“设置”中可以切换免打扰功能。当你睡觉时将手机锁定,这意味着你不会得到信息或电话通知。
5使用声音撰写文本消息,即在键盘界面点击麦克风图标,只是对着说话你的iPhone就能键入对应文字,这一功能非常准确。
6可以启用Emoji键盘,设置→通用→键盘→选择“添加新键盘”→滚动页面寻找新添加的输入法→点击添加。如果要使用表情符号,则点击键盘上一个看起来像地球的按钮。
7如果你想快速关闭一个应用程序,则可以双击iPhone的Home键,应用程序会退出桌面,或者按住一个应用程序的图标,直到其震动一下,然后点击红色的圆圈来关闭应用程序。
8手机每次添加新联系人、电子邮件等,可以连接到WiFi将其备份到iCloud。前往设置→iCloud储存与备份→启用此功能。
9如果你正在读一个长长的清单,但想跳回到页面顶部,点击显示在屏幕顶部的时间即可。
10使用iPhone的时钟程序,这是一个相当繁琐的设置。其实有更容易的方法,按住Home键→直到Siri图标弹出→说“我的闹钟设置为任何时候”。
11你可以控制你的音乐,而无需打开一个单独的应用程序。双击Home键→扫描桌面文件→打开音乐。最左边的按钮,可以锁定手机屏幕的横纵方向。
12使用摄像应用程序时,按音量“+”按钮,打开抓拍照片模式。同时按下中间按钮和开关键即可截屏。
安全漏洞:
iPhone 4S2014年2月24日上周五苹果iOS曝出重大安全bug,该漏洞的危害已经延伸到苹果浏览器以外,危及到包括Mail、Twitter、Facetime、iMessage在内的其他应用程序,甚至苹果的软件更新机制。尽管该公世雀核司声明将很快修复,但恐怕还需要一些时日。
继苹果上周五发布声明,称黑客可能会利用iOS操作系统存在的一个严重安全漏洞拦截用户电子邮件和其它加密通讯信息之后,苹果台式机和笔记本电脑采用的OS X操作系统也存在同样的问题。不过苹果目前尚未就此做出任何反应。
2014年7月10日,央视曝光称,苹果手机定位服务默认记录用户“行踪”,虽然可以关闭,但后台仍能记录相关数据。
iPhone手机的定位功能可以收集用户的位置信息,精确到几点去哪、待了多长时间,甚至可以从这些数据中分析出哪里是用户的家以及工作单位等。
苹果手机记录用户信息的方式主要有:通过APP程序,即程序开发软件未向苹果申请定位信息权限,但苹果自行定位后,再使用APP时,系统就可知道你在哪里使用了软件;Wifi连接等也能记录用户的位置信息。
所谓的用户信息加密岁尺文件,也能通过手机连接USB查询到,用户只需查询手机系统搜掘文件夹 第6层文件夹下 .db的文件就能看到自己的信息记录。
多名技术人士称,只要是智能手机,连接过WiFi、有运营商网络,打开过有位置记录功能的APP软件,就都有可能被自动跟踪。除了使用一些手机安全软件的位置清除和粉碎功能,用户暂无法通过常规手段对地点记录功能进行卸载。现在厂商出的安全软件,还不适用苹果手机,除非苹果手机越狱,否则不可能删除这些记录。目前只有安卓手机可以删除。
Ⅱ cache是什么
cache的意思是:隐藏处,秘窖;贮藏物,隐藏物(尤指武器);高速缓冲存储器。
短语
DNS cache poisoning域名服务器缓存污染 ; DNS快取记忆体下毒
Web Cache网页快照 ; 网页缓存 ; 速缓存 ; web缓存
format cache格式化缓存分区 ; 格式缓存 ; 格局化缓存分区 ; 格式化缓存区
示例:
In your Web browser's cache are the most recent Web files that you have downloaded.
在你的网络浏览器的高速缓冲存储器里是你最新下载的网络文档。
近义词:covert
英 [ˈkʌvət] 美 [ˈkʌvərt; ˈkoʊvɜːrt]
adj. 隐蔽的,秘密的;在丈夫保护下的
n. (动物可藏身的)矮树丛;覆羽;隐藏处
短语
COVERT OPERATION隐蔽行动 ; 隐秘行动 ; 秘密行动
Covert Affairs邻家女特工 ; 秘密行动
covert coverage秘密采访 ; 隐性采访
Ⅲ mybatis二级缓存原理
mybatis篇
一级缓存的作用域是sqlsession级别的,也就是说不同的Sqlsession是不会走一级缓存的,那么如果需要跨Sqlsession的缓存,就需要使用到二级缓存了。
二级缓存的话默认是关闭的,所以需要我们开启,开启的方式官网也有介绍,需要在mybatis-config.xml核心配置文件中开启二级缓存功能,并且我们mapper.xml中也需要加入<cache/>标签,二者缺一不可,后面我们看源码就能知道为啥这两个缺一不可。
先来看个例子
执行结果很意外,为什么二级缓存的功能都开启了,结果sql还是执行了2次,并没有走缓存,其实,二级缓存还有一个要注意的点那就是必须要提交事务二级缓存才会保存记录,因为已经是跨SqlSession共享缓存了,所以事务必须要提交,否则会读取到因混滚导致的错误数据。
有个地方需要注意,二级缓存的Sqlsession中的Executor实际上是CachingExecutor
我们知道getMapper最终的执行都会走到MapperProxy类中的invoker方法,具体就来分析这个类。
最后来到了重点的地方
CacheKey我们可以认为他就是每个方法对应的一个唯一标识符。
这里我们就可以看出为什么之前两者必须要配置,cacheEnable开启了才会用CachingExecutor包装一下BaseExecutor,而<cache/>标签只有配置了才会走缓存的逻辑
这里的tcm
到这,我们就差不多揭开了二级缓存的秘密,重要的还是<cache/>这个标签,因为它的存在就对应着每个mapper.xml中的一个具体Cache类,而这个类在每个mapper.xml中又是同一个,所以最终的值是放入了Cache类中,key为CacheKey,value就是sql执行的结果。
至于为什么需要事务提交才能命中二级缓存,我们看下put方法就知道
这里的putObject并没有真正的把值存入Cache中,而是存入了待提交的Map中,所以再来看下commit做了什么
具体看tcm.commit()
而这里可以看到此处会遍历所有的TransactionCache并执行commit方法
真相就出来了,会遍历待提交的Map然后把里面的值都存入Cache中,所以后面的查询就能直接从Cache中拿到值了。
总结
二级缓存先会把Sqlsession中的Executor包装成包装成CacheingExecutor,所有的sql都会经过这个类,而该类通过mapper.xml中配置的唯一<cache/>标签生成的Cache类存放每个方法执行的结果