仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 653|回复: 8
打印 上一主题 下一主题

[学习教程] ASP.NET网页编程之.net中序列化

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:18:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。甚么是序列化?
---.net的运转时情况用来撑持用户界说范例的流化的机制。它是将工具实例的形态存储到存储媒体的历程。在此过程当中,先将工具的大众字段和公有字段和类的称号(包含类地点的程序集)转换为字撙节,然后再把字撙节写进数据流。在随后对工具举行反序列化时,将创立出与原工具完整不异的正本。
序列化的目标:
1、以某种存储情势使自界说工具耐久化;
2、将工具从一个中央传送到另外一个中央。
本色上序列化机制是将类的值转化为一个一样平常的(即一连的)字撙节,然后就能够将该流写到磁盘文件或任何其他流化方针上。而要想实践的写出这个流,就要利用那些完成了IFormatter接口的类里的Serialize和Deserialize办法。
在.net框架里供应了如许两个类:
1、BinaryFormatter
BinaryFormatter利用二进制格局化程序举行序列化。您只需创立一个要利用的流和格局化程序的实例,然后挪用格局化程序的Serialize办法。流和要序列化的工具实例作为参数供应给此挪用。类中的一切成员变量(乃至标志为private的变量)都将被序列化。
起首我们创立一个类:
[Serializable]
publicclassMyObject{
publicintn1=0;
publicintn2=0;
publicStringstr=null;
}
Serializable属性用来明白暗示该类能够被序列化。一样的,我们能够用NonSerializable属性用来明白暗示类不克不及被序列化。
接着我们创立一个该类的实例,然后序列化,并存到文件里耐久:
MyObjectobj=newMyObject();
obj.n1=1;
obj.n2=24;
obj.str="一些字符串";
IFormatterformatter=newBinaryFormatter();
Streamstream=newFileStream("MyFile.bin",FileMode.Create,
FileAccess.Write,FileShare.None);
formatter.Serialize(stream,obj);
stream.Close();
而将工具复原到它之前的形态也十分简单。起首,创立格局化程序和流以举行读取,然后让格局化程序对工具举行反序列化。
IFormatterformatter=newBinaryFormatter();
Streamstream=newFileStream("MyFile.bin",FileMode.Open,
FileAccess.Read,FileShare.Read);
MyObjectobj=(MyObject)formatter.Deserialize(fromStream);
stream.Close();
<p>//上面是证实
Console.WriteLine("n1:{0}",obj.n1);
Console.WriteLine("n2:{0}",obj.n2);
Console.WriteLine("str:{0}",obj.str);那做企业软件是不是最好用J2EE?
山那边是海 该用户已被删除
沙发
发表于 2015-1-19 07:47:54 | 只看该作者
主流网站开发语言之JSP:JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java2platformEnterpriseEdition)应用体系中的一部分。
第二个灵魂 该用户已被删除
板凳
发表于 2015-1-28 05:39:09 | 只看该作者
ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。
小女巫 该用户已被删除
地板
发表于 2015-2-5 17:40:08 | 只看该作者
业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高,你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
深爱那片海 该用户已被删除
5#
发表于 2015-2-13 04:35:49 | 只看该作者
但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。
若相依 该用户已被删除
6#
发表于 2015-3-3 14:38:27 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
爱飞 该用户已被删除
7#
发表于 2015-3-11 11:41:10 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
莫相离 该用户已被删除
8#
发表于 2015-3-18 15:04:01 | 只看该作者
PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
冷月葬花魂 该用户已被删除
9#
发表于 2015-3-26 10:36:51 | 只看该作者
主流网站开发语言之CGI:CGI就是公共网关接口(CommonGatewayInterface)的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-6-18 12:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表