首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >串行化需求

串行化需求
EN

Stack Overflow用户
提问于 2015-09-13 03:20:23
回答 2查看 36关注 0票数 0

我是新的串行化概念,请帮助理解概念。序列化到底是什么意思?我已经读过定义,但不能详细理解。

基本类型(int、string)如何序列化?

如果我们在代码中不使用序列化,数据将如何传输?

从前端Java/C#代码访问数据库时是否涉及任何隐式序列化过程?从数据库中插入/删除示例。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-13 05:22:14

序列化只是获取一个对象,并将其转换为一些更简单的东西。假设您在C#中有一个对象,如下所示:

代码语言:javascript
复制
class Employee
{
    public int age;
    public string fullname;
}

public static void Main()
{
    var john = new Employee();
    john.age = 21;
    john.fullname = "John Smith";

    var matt = new Employee();
    matt.age = 44;
    matt.fullname = "Matt Rogers";
    ...       

这是C#友好的。但是,如果您想以CSV格式将该信息保存在文本文件中,您将得到如下结果:

代码语言:javascript
复制
age,fullname
21,John Smith
44,Matt Rogers

编写CSV时,基本上是将信息序列化为不同的格式--在本例中是CSV文件。您可以将对象序列化为XML、JSON、数据库表、内存或其他东西。这是一个有关序列化的Udemy示例

如果您不序列化,混乱将被传输。也许您的对象的ToString()在传输和任何结果传输之前都会被隐式调用。因此,将您的数据转换为对接收器友好的内容是非常重要的。

总会有一些序列化发生。例如,在执行填充DataTable的查询时,发生了序列化。

票数 0
EN

Stack Overflow用户

发布于 2015-09-13 05:58:53

概念:

序列化是将对象转换为一系列字节的过程。通常,我们在应用程序中使用的对象是复杂的,它们都可以很容易地以一系列字节的形式表示,这些字节可以存储在文件/数据库中,也可以通过网络传输。

仅通过使类实现可序列化接口,就可以使类可序列化。

要成功地序列化类,必须满足两个条件:类必须实现java.io.Serializable接口。类中的所有字段都必须是可序列化的。如果字段不可序列化,则必须标记为瞬态字段。

当程序进行序列化时,如果它存储在一个扩展名为.ser的文件中,那么它可以用于反序列化。序列化为序列化对象提供一个serialVersionUID,该对象必须与反序列化匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32545982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档