자바 대상 직렬 화 작업 사례 분석

본 고의 실례 는 자바 대상 의 서열 화 조작 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
자바 에서 대상 을 직렬 화 할 수 있 습 니 다.
대상 을 직렬 화 하려 면 직렬 화 된 대상 이 인터페이스 Serializable 을 실현 해 야 합 니 다.이 인 터 페 이 스 는 자바.io 패키지 에 있 습 니 다.

pakacge demo;
import java.io.Serializable;
/**
 *    Serializable    demo 
 */
public class Demo1 implements Serializable
{
    private String name;
    private String sex;
    private int age;
    public Demo1()
    {
    }
    public Demo1(String name,String sex,int age)
    {
        this.setName(name);
        this.setSex(sex);
        this.setAge(age);
    }
    public void setName(String name)
    {
        this.name = name;
    }
    public String getName()
    {
        return this.name;
    }
    public void setSex(String sex)
    {
        this.sex = sex;
    }
    public String getSex()
    {
        return this.sex;
    }
    public void setAge(int age)
    {
        this.age = age;
    }
    public int getAge()
    {
        return this.age;
    }
}

직렬 화 대상 사례 프로그램,인터넷 의 튜 토리 얼 은 직렬 화 된 대상 을 파일 에 출력 하 는 것 이지 만,일반적으로 우 리 는 직렬 화 된 대상 을 문자열 에 저장 하고 데이터베이스 에 저장 합 니 다.그래서 여 기 는 파일 출력 대상 대신 ByteArray OutputStream 대상 을 사용 합 니 다.

import demo.Demo1;
import java.io.*;
public class Index
{
    public static void main(String[] agrs)
    {
        test1();
    }
    public static void test1()
    {
        Demo1 demo1 = new Demo1("  "," ",23);
        try{
            //     ByteArray   
            ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
            //           ,             byteOut  
            ObjectOutputStream objOutputStream = new ObjectOutputStream(byteOut);
            //      byteOut    
            objOutputStream.writeObject(demo1);
            //        String   
            String strObj = byteOut.toString("ISO-8859-1");
            //   
            objOutputStream.close();
            byteOut.close();
            /***************          ******************/
            //            
            ByteArrayInputStream byteInputStream = new ByteArrayInputStream(strObj.getBytes("ISO-8859-1"));
            //        
            ObjectInputStream objInput = new ObjectInputStream(byteInputStream);
            //         
            Demo1 demo1_ser = (Demo1)objInput.readObject();
            //   
            objInput.close();
            byteInputStream.close();
            System.out.println(demo1_ser.getName());
            System.out.println(strObj);
        }catch(IOException e){
            System.out.println(e.getMessage());
        }catch(ClassNotFoundException e){
            System.out.println(e.getMessage());
        }
    }
}

실행 결과:

더 많은 자바 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 자바 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기