【转】理解Java对象序列化

1. 什么是Java对象序列化
Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比JVM的生命周期更长。但在现实应用中,就可能要求在JVM停止运行之后能够保存(持久化)指定的对象,并在将来重新读取被保存的对象。Java对象序列化就能够帮助我们实现该功能。
使用Java对象序列化,在保存对象时,会把其状态保存为一组字节,在未来,再将这些字节组装成对象。必须注意地是,对象序列化保存的是对象的”状态”,即它的成员变量。由此可知,对象序列化不会关注类中的静态变量。
除了在持久化对象时会用到对象序列化之外,当使用RMI(远程方法调用),或在网络中传递对象时,都会用到对象序列化。Java序列化API为处理对象序列化提供了一个标准机制,该API简单易用,在本文的后续章节中将会陆续讲到。…

Continue reading

【转载】大牛文章

TW张逸 Thoughtworks,Senior Cosultant
ThoughtWorks(中国)程序员读书雷达

张鑫旭
翻译:web制作、开发人员需知的Web缓存知识

许令波, Java 工程师, 淘宝网
深入分析 Java 中的中文编码问题

陈皓
Docker基础技术:AUFS
性能测试应该怎么做?
这多年来我一直在钻研的技术
缓存更新的套路
CHROME开发者工具的小技巧

阮一峰
读懂 ECMAScript 规格
ECMAScript 6 入门
Javascript模块化编程(一):模块的写法
Javascript模块化编程(二):AMD规范
Javascript模块化编程(三):require.js的用法
浏览器同源政策及其规避方法
学习Javascript闭包(Closure)
undefined与null的区别
JavaScript 运行机制详解:再谈Event Loop

npm 模块安装机制简介
HTML代码简写法:Emmet和Haml

Pull Request 的命令行管理

MVC,MVP 和 MVVM 的图示

Git 使用规范流程
Git 协作流程
常用

Continue reading

【转载】OSChina

前端自学路线之 JavaScript 篇
Web 开发者需要知道的 12 个终端命令
无需 Flash 使用 jQuery 复制文字到剪贴板
最常见的 20 个 jQuery 面试问题及答案

使用Chrome DevTools的Timeline和Profiles提高Web应用程序的性能
每个 Web 开发者都应该知道的关于 URL 编码的知识
九种浏览器端缓存方法知多少
理解 HTTPS 协议
Tomcat 生产服务器性能优化

Java 开发必装的 IntelliJ IDEA 插件

Java 的最佳实践
JVM调优-堆大小设置、回收器选择
HashMap 怎么 hash?又如何 map?

Java设计模式学习之工厂模式
解Bug之路-记一次JVM堆外内存泄露Bug的查找

Spring事务用法示例与实现原理

HttpClient4.4 登录知乎(详细过程)

spring AOP是什么?你都拿它做什么?
Spring核心——纯Java运行与@Bean

Continue reading

名言

乔布斯:时光是有限的,所以不要浪费在别人的生命中。不要对信条盲从使自己活在别人的思考结果下。不要让外界意见的噪音淹没自己内心的声音。最重要的是,要有勇气去跟随你的心和直觉,知道自己真正想成为什么样的人,除此之外其他的都是次要的。——在斯坦福大学毕业典礼上的演讲

李开复
(1)千万不要放纵自己,给自己找借口。对自己严格一点儿,时间长了,自律便成为一种习惯,一种生活方式,你的人格和智慧也因此变得更加完美。
(2)我的座右铭:我一直信奉以下做事的三原则:1)有勇气来改变可以改变的事情;2)有度量接受不可改变的事情;3)有智慧来分辨两者的不同。

任正非:我希望年轻人,放下人云亦云的浮躁与作秀,用点实在精神了解社会,了解生活,了解谁才是这个世界脊梁。百年以来,我们中国人说得多,做得少;批评得多,建设的少;指责别人的多,自己力行的少。希望年轻人能看到这段文字,悟通这样的感觉,沉下心来,做点实事。

李敖:1.不主动,美女就会让别的男人爬到她身上。2.不拒绝,就会有丑女爬到你身上。3.不承诺,就没哪个女人愿意让你爬在她身上。其实干工作也一样:1.不主动,好位置就会让别人弄走。2.不拒绝,什么瘪事都安排给你,还经常受批。3.不承诺,没有哪个领导相信你,因为领导感觉不到你的决心。

陈道明:一个人的涵养,不在心平气和时,而是心浮气燥时;一个人的理性,不在风平浪静时,而是众声喧哗时;一个人的慈悲,不在居高临下时,而是人微言轻时;情侣间的尊重,不是闲情逸致时,而是观点相左时;夫妻间的恩爱,不在花前月下时,而是大难临头时。…

Continue reading

【转载】我希望在20岁时就知道的26条时间管理技巧

几天前在 Slideshare 上看到 Etienne Garbugli 的一个关于时间管理的幻灯片,觉得挺不错,值得分享。另外由于 Slideshare 被墙,顺带保存分享到墙内。如果译文有不到位的地方,烦请指出,谢谢。

01. There is alway time. Time is priorities. 时间常有。时间优先。

02. Days always fill up. 时间总会有的。
Only plan for 4-5 hours of real work per day. 每天只计划4-5小时用于真正工作。—— DDH,37signals

03. Work more when you are in the zone. Relax when you‘re not. 当你在工作状态时,那就多干点;不在状态时,就好好休息。
“有时候会连着几天不是工作状态,有时在工作状态时却又能天天忙活 …

Continue reading

【转载】伯乐在线 2-2

数据库
MYSQL入门全套
mysql数据库开发常见问题及优化
数据库范式那些事
安装完 MySQL 后必须调整的 10 项配置
MySQL之终端:管理数据库的基本操作
MySQL 调优/优化的 100 个建议
不同场景下 MySQL 的迁移方案
MySQL Drop 大表的解决方案
MySQL 数据库存储引擎
InnoDB 存储引擎之索引和优化
MySQL中的两种临时表
一次存储过程参数嗅探定位流程总结

详解 MySQL 中的 explain
读懂 MySQL 执行计划

MySQL 事务隔离级别
MySQL mysqlbinlog 解析出的 SQL 语句被注释是怎么回事

SQL注入,你想知道的那些事
一次非常有意思的 SQL 优化经历
MySQL索引原理及慢查询优化
三种分页方式效率的简单测试
分页查询,你真的懂吗?

每个开发人员都需要了解的一个SQL技巧
运维角度浅谈 MySQL

Continue reading

【转载】伯乐在线 2-1

设计
[译].[信息图] 色彩心理学:设计师的选色指南
帮程序员减压放松的10个良心网站
色彩设计方法
提升Web用户体验的71个设计要点
PS教程:教你打造APP效果展示图
高清图标SVG解决方案全总结(上)

算法
浅谈算法和数据结构(1):栈和队列
五大常用算法之一:分治算法
五大常用算法之二:动态规划算法
五大常用算法之三:贪心算法
五大常用算法之四:回溯法
五大常用算法之五:分支限界法
学习数据结构与算法,成为出色的程序员
数据结构之链表与数组(1):数组和链表的简介
八大排序算法
Java实现 二叉搜索树算法(BST)
4 张 GIF 图帮助你理解二叉查找树
4 张 GIF 图帮助你理解二叉查找树
数学在计算机图形学中的应用
图解:二叉搜索树算法
对一致性Hash算法,Java代码实现的深入研究
常用排序算法总结(1)
常用排序算法总结(2)
数据压缩算法:LZ77 算法的分析与实现
死磕一周算法,我让服务性能提高50%
图像主题色提取算法

大型网站限流算法的实现和改造

模式
如何向妻子解释设计模式
大型网站系统架构的演化
设计模式问答2
23种设计模式(8):观察者模式
大型网站架构体系的演变(上)
大型网站架构体系的演变(下)
浅谈大型Web系统架构
细数 20 世纪最伟大的十大算法

Continue reading

【转载】IBM知识库

JVM 垃圾回收器工作原理及使用实例介绍
Java 语言中 Enum 类型的使用介绍
Java 日志缓存机制的实现

深入分析 Java I/O 的工作机制
Java I/O 操作及优化建议
Java 线程简介
Java 中的进程与线程
Java 多线程与并发编程专题
Java 应用性能调优实践

Java 性能分析工具 , 第 1 部分: 操作系统工具
Java 性能分析工具 , 第 2 部分:Java 内置监控工具
Java 性能分析工具 , 第 3 部分: Java Mission Control

Servlet 工作原理解析
Servlet 3.0

Continue reading