Java 注解入门
注解(Annotation),也叫元数据。是一种代码级别的说明。JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。
注解(Annotation),也叫元数据。是一种代码级别的说明。JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。
Java 中,IO 流的 read 和 write 方法都是消耗系统资源的操作,多数操作系统在系统级进行了优化,比如在进行写文件的时候,先将字节存储到内核缓冲里,当流关闭或刷新时,再将内核缓冲的内容写入磁盘。
关于系统级的优化,这里不深入了,整理一下应用中 IO 的优化知识,主要是缓冲流的一些注意点。在 Socket 编程以及文件的读写操作等,缓冲流尤为重要。
一次网络通信,也许会有多个缓存,从数据库缓存,服务器缓存,代理服务器缓存,中间服务器缓存,到本地浏览器缓存等,一路缓存下来,不仅减轻服务端的压力,本地用户体验也流畅了。
HTTP 的缓存是在请求/响应头里控制的,不同版本的 HTTP 协议,缓存配置字段也有些区别。
HTTPS 与 SSH,他们都是网络通信的协议,主要作用都是加密网络通信数据,他们之间的区别广义上讲,差不了多少,以至于有人把他们比作 苹果和桔子的关系,我们日常使用的 GitHub,在 clone 仓库的时候,也提供了 HTTPS 和 SSH 两种方式,都能 clone 下来。
但 SSH 和 HTTPS 还是不同的,HTTPS 大量用于客户端服务器直接的安全通信,SSH 主要用于两台电脑之间登录、共享数据和协同工作。
使用 HTTPS 时,所有的 HTTP 请求和响应数据在发送到网络之前,都要先进行加密。 HTTPS 在 HTTP 下面提供了一个数据传输级的安全层(SSL or TLS),用来对数据进行加密。
写这篇文章时,看到了一篇很形象的阐述 HTTPS 的安全的故事,故事有趣不枯燥,推荐大家可以直接看看这篇 HTTPS 的故事。