愤怒的大鸟 发表于 2015-1-16 22:18:29

ASP.NET网页编程之.net中序列化

我认为,可以通过更加简单的首次编译,而增加第二次编译的负担,来提高java的运行效率。只是将java源代码进行简单的等价转换,而不假设编译成某种虚拟机器的目标格式,而由本地编译器针对性的二次编译。甚么是序列化?
---.net的运转时情况用来撑持用户界说范例的流化的机制。它是将工具实例的形态存储到存储媒体的历程。在此过程当中,先将工具的大众字段和公有字段和类的称号(包含类地点的程序集)转换为字撙节,然后再把字撙节写进数据流。在随后对工具举行反序列化时,将创立出与原工具完整不异的正本。
序列化的目标:
1、以某种存储情势使自界说工具耐久化;
2、将工具从一个中央传送到另外一个中央。
本色上序列化机制是将类的值转化为一个一样平常的(即一连的)字撙节,然后就能够将该流写到磁盘文件或任何其他流化方针上。而要想实践的写出这个流,就要利用那些完成了IFormatter接口的类里的Serialize和Deserialize办法。
在.net框架里供应了如许两个类:
1、BinaryFormatter
BinaryFormatter利用二进制格局化程序举行序列化。您只需创立一个要利用的流和格局化程序的实例,然后挪用格局化程序的Serialize办法。流和要序列化的工具实例作为参数供应给此挪用。类中的一切成员变量(乃至标志为private的变量)都将被序列化。
起首我们创立一个类:

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一样提供了完善的调试/纠错体系。

深爱那片海 发表于 2015-2-13 04:35:49

但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。

若相依 发表于 2015-3-3 14:38:27

有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。

爱飞 发表于 2015-3-11 11:41:10

弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。

莫相离 发表于 2015-3-18 15:04:01

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。

冷月葬花魂 发表于 2015-3-26 10:36:51

主流网站开发语言之CGI:CGI就是公共网关接口(CommonGatewayInterface)的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等。
页: [1]
查看完整版本: ASP.NET网页编程之.net中序列化