当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 序列化概述 简单来说序列化就是一种用来处理对象流的机制,所谓对
 

 

 ·java数据对象技术jdo(1)    »显示摘要«
    摘要:作为异军突起的新型语言,java定义了一个标准的运行环境,用户定义的类在其中得到执行。这些用户自定义类的实例代表了真实环境中的数据,包括储存在数据库、文件或某些大型事务处理系统中的数据,而小型系统通常也需要一种在本地负责控制数据存储的机制。 由于数据访问技术在不同的数据源类型中是不一样的,因此对数据进行访问成了给程序开发人员的一种挑战,程序员需要对每一种类型的数据源使用特定的编程接口(api),即......
 ·深入理解collections api    »显示摘要«
    摘要:一个 list l 可能被做如下排序: collections.sort(l); 如果这个 list 由 string 元素所组成, 那么它将按词典排序法(按字母顺序)进行排序; 如果它是由 date 元素所组成, 那么它将按年代顺序来排序。 java 怎么会知道该怎么做呢? 这一定是个魔术! 其实不然。实际上, string 和 date 均实现了comparable接口。 comparab......


Java对象序列化(1)

序列化概述

问题的引出: 【程序编程相关:旧金山Wi-Fi网络工程竞标 Googl

简单来说序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化,流的概念这里不用多说(就是i/o),我们可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间(注:要想将对象传输于网络必须进行流化)!在对对象流进行读写操作时会引发一些问题,而序列化机制正是用来解决这些问题的! 【推荐阅读:北电高通创无线宽带下载新记录 挑战EVD

以下序列化机制的解决方案: 【扩展信息:阿尔卡特134亿美元并购朗讯 将裁员88

如上所述,读写对象会有什么问题呢?比如:我要将对象写入一个磁盘文件而后再将其读出来会有什么问题吗?别急,其中一个最大的问题就是对象引用!举个例子来说:假如我有两个类,分别是a与b,b类中含有一个指向a类对象的引用,现在我们对两个类进行实例化{ a a = new a(); b b = new b(); },这时在内存中实际上分配了两个空间,一个存储对象a,一个存储对象b,接下来我们想将它们写入到磁盘的一个文件中去,就在写入文件时出现了问题!因为对象b包含对对象a的引用,所以系统会自动的将a的数据复制一份到b中,这样的话当我们从文件中恢复对象时(也就是重新加载到内存中)时,内存分配了三个空间,而对象a同时在内存中存在两份,想一想后果吧,如果我想修改对象a的数据的话,那不是还要搜索它的每一份拷贝来达到对象数据的一致性,这不是我们所希望的!

1.保存到磁盘的所有对象都获得一个序列号(1, 2, 3等等)

2.当要保存一个对象时,先检查该对象是否被保存了.

3.如果以前保存过,只需写入"与已经保存的具有序列号x的对象相同"的标记,否则,保存该对象

通过以上的步骤序列化机制解决了对象引用的问题!

序列化的实现


...   下一页
    摘要:使用对称加密系统有一些缺点。由于只有一个秘钥能够解密密文,所以你必须把它随密文一起送出去,这就会引起一些风险:有人可能会截取到密钥。此外,每个接收者都必须有一个不同的密钥,所以你还要解决密钥管理的问题。 通过使用公钥和密钥,非对称加密法圆满地解决了这些问题。使用你的公钥,任何人都可以加密只能由你解开的信息。尽管你还是必须保护好自己的密钥,但是你的公钥可以任意发放或者放在某个中央库供人取用。在本文......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE