`
tdttyl.cwm
  • 浏览: 24576 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

浅谈JavaBean序列化(一)

    博客分类:
  • Java
阅读更多

昨天晚上在网站Top看到一个朋友提到序列化,他做了很详细的剖析,我觉得很好。又因为以前大学毕业论文弄的消息中间件(JMS),刚好用到了序列化,所以把Java的序列化再给整理一下。

 

   定义一个JavaBean 并实现Serializable接口

 

package org.fuzzy.bottle.bean;

import java.io.Serializable;

/**
 * Created with IntelliJ IDEA.
 * User: caiwm
 * Date: 12-7-3
 * Time: 下午10:13
 * To change this template use File | Settings | File Templates.
 */
public class RemoteBean implements Serializable {
    private String locateAddress;
    private String remoteAddress;
    private String locateImsi;
    private String locateBigValue;

    public String getLocateAddress() {
        return locateAddress;
    }

    public void setLocateAddress(String locateAddress) {
        this.locateAddress = locateAddress;
    }

    public String getRemoteAddress() {
        return remoteAddress;
    }

    public void setRemoteAddress(String remoteAddress) {
        this.remoteAddress = remoteAddress;
    }

    public String getLocateImsi() {
        return locateImsi;
    }

    public void setLocateImsi(String locateImsi) {
        this.locateImsi = locateImsi;
    }

    public String getLocateBigValue() {
        return locateBigValue;
    }

    public void setLocateBigValue(String locateBigValue) {
        this.locateBigValue = locateBigValue;
    }
}

 写个测试方法:

 

    public static void main(String[] args) throws IOException {
        RemoteBean remoteBean = new RemoteBean();
        remoteBean.setLocateAddress("Http://www.iteye.com/holly-shite/write-page.jsp");
        remoteBean.setLocateImsi("110M55876384991S");
        remoteBean.setRemoteAddress("http://localhost:1111/33-july-judy.php");

        FileOutputStream fos = new FileOutputStream("temp.out");
        ObjectOutputStream oos  = new ObjectOutputStream(fos);
        oos.writeObject(remoteBean);
        oos.flush();
        oos.close();
        fos.flush();
        fos.close();
    }

 序列化,把流输出到文件中,可以看到持久化的数据如下:


 

-----------------------

序列化传输,对于分布式系统尤为重要。不仅效率很好,而且JavaBean的属性不会丢失。

  • 大小: 83.5 KB
分享到:
评论

相关推荐

    java基础 对象序列化

    当一个字段被声明为`transient`时,它将不会成为序列化的一部分,这意味着它不会被写入输出流,也不会在反序列化过程中被读取。这对于敏感信息(如密码)或动态生成的数据特别有用,因为它们无需在网络上传输或持久...

    Jedis序列化和反序列化使用jar

    3. commons-beanutils-1.9.3.jar:Apache Commons BeanUtils库可以帮助开发者方便地处理JavaBean属性,虽然主要不是为了序列化设计,但在某些场景下,可以配合其他库辅助序列化JavaBean。 4. commons-pool2-2.3.jar...

    java反序列化工具

    Java反序列化是一种将已序列化的对象状态转换回对象的过程,它是Java平台中持久化数据的一种常见方式。在Java应用程序中,序列化用于保存对象的状态以便稍后恢复,或者在网络间传输对象。然而,这个过程也可能引入...

    基于注解的JavaBean类型数据序列化与反序列化动态字段及值过滤设计源码

    该项目是一款基于注解的JavaBean类型数据序列化与反序列化工具,实现了动态字段及值过滤功能。适用于服务端(如Spring和Thrift)的数据处理,旨在提供灵活的序列化和反序列化机制,支持字段和值的动态过滤。项目包含...

    JavaBean 持久化

    ### JavaBean 持久化 #### 知识点概览 1. **JavaBean 的概念与作用** ...通过使用序列化机制和合理管理 JavaBean 的属性,可以有效地实现 JavaBean 的持久化功能,从而提高应用程序的可用性和灵活性。

    javaBean的详细介绍

    JavaBean 是一种特殊的 Java 类,它具有统一的接口格式,主要组成部分包括属性(Properties)、方法(Method)和事件(Events)。下面将详细介绍 JavaBean 的概念、组成部分、属性的介绍、JSP 中的引用、生命周期等...

    Java中GSON的使用(源代码)

    1.2 JavaBean序列化/反序列化 1.2.1 步骤说明 普通JavaBean 嵌套JavaBean 1.3 数组和List的序列化/反序列化 1.3.1 数组的序列化/反序列化 1.3.2 List集合的序列化/反序列化 1.4 Set和Map的序列化/反序列化 1.4.1 Set...

    javabean一个简单的例子,可直接用

    同时,JavaBean默认实现了Serializable接口,可被序列化和反序列化,方便在网络间传输或持久化存储。 在描述中提到的“可直接用”,意味着这个JavaBean可能已经预设了一些常用的功能,可以直接在项目中导入和使用。...

    JavaBean示例

    3. **序列化**:通常,JavaBean会实现`java.io.Serializable`接口,这样它们就可以被序列化,便于持久化或跨网络传输。 4. **属性访问器和修改器**:除了基本的getter和setter,JavaBean还可能包含is方法(对于布尔...

    小谈JavaBean

    2. **实现Serializable接口**:虽然现在大多数Java类默认实现序列化,但这个接口确保JavaBean可以被序列化,即对象状态可以保存到磁盘或在网络间传输。 3. **属性接口**:每个属性都应该有对应的getter和setter方法...

    java自学==javabean实例

    - **序列化与反序列化**:在分布式系统中,JavaBean可以通过序列化实现对象的持久化存储或在网络间传输。 - **代码生成工具**:例如Eclipse、IntelliJ IDEA等IDE,可以自动根据JavaBean生成getter和setter方法,...

    JAVABEAN

    JavaBean是一种特殊的Java类,它是Java编程语言中的一个核心概念,尤其在开发企业级应用程序时极为常见。JavaBean遵循特定的规范,使它们能够被其他Java应用或开发工具(如IDEs)识别、可视化和操作。JavaBean的主要...

    javabean(DB)

    - **序列化支持**:JavaBean可以通过实现`Serializable`接口来支持序列化,以便持久化对象状态。 2. **JavaBean在数据库操作中的应用** - **数据访问对象(DAO)模式**:JavaBean常被用于实现DAO层,提供对数据库...

    Javas_socket传递JavaBean(案例)

    在我们的`Person`类中,我们没有显式地实现这个接口,因为JavaBean默认就是可序列化的。如果自定义类没有实现`Serializable`,在尝试序列化时会抛出异常。 总结来说,本案例通过Java Socket实现了客户端和服务器...

    OmniBean,万能JavaBean

    OmniBean是一个强大的JavaBean库,它允许开发者将JavaBean对象序列化成各种不同的格式,如protocol buffer和XML。在Java编程中,JavaBean是一种符合特定规范的类,主要用于数据封装,它们通常具有公有属性、getter和...

    JavaBean课件.rar

    4. **序列化**:JavaBean通常实现Serializable接口,允许对象的状态被序列化和反序列化。 5. **事件处理**:JavaBean可能支持事件监听机制,允许其他组件订阅并响应Bean的特定事件。 在Java开发中,JavaBean广泛...

    Java序列化技术的探讨.pdf

    对象序列化是一种用来处理对象流的机制,将对象的内容流化,能够将对象状态转换成流之后,可以将其保存到文件、管道、另一个进程、通过网络将对象发送到另一主机、或发送到Web客户端。对象序列化功能非常简单、强大...

    javabean BDK

    5. **序列化支持**:如果需要持久化 JavaBean 对象,那么需要实现 Serializable 接口,以便能够被序列化和反序列化。 BDK 作为测试工具,可能提供了以下功能: 1. **属性检查**:可以检查 JavaBean 的属性值,验证 ...

    java序列化

    序列化在很多场景下都非常有用,例如在网络通信中发送对象、持久化对象到数据库或文件、在多线程环境下保存对象状态以及实现RMI(远程方法调用)和EJB(企业级JavaBean)等高级功能。 总的来说,Java序列化是一个...

    JavaBean_Javabean增删改查_audiencevu9_

    3. **序列化**:为了支持持久化或跨网络传输,JavaBean可以实现Serializable接口。 在用户管理的场景中,我们通常需要创建一个User类,这个类将包含如ID、用户名、密码、电子邮件等属性。接下来,我们将讨论如何...

Global site tag (gtag.js) - Google Analytics