일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Parent
- removeClass
- index %
- hide
- 소스트리인증실패
- Math.ceil()
- selectedIndex
- calc.plus
- 파일질라설치
- Math.floor()
- 1521
- 주석이 먹히지 않을 때
- 파일질라설치오류
- 증가값
- calc.minus
- selectoptions
- excel중복체크
- Math.round()
- push오류
- FileZilla다운로드
- slideUp
- ctrl+/
- Git
- Excel
- toFixed()
- is_check
- addClass
- 파일질라다운로드
- FileZilla설치
- SUB함수
- Today
- Total
잡동사니에도 사랑을
[21.08.25] ObjectWriteMain, ObjectReadMain, PersonDTO 본문
////////PersonDTO
package io;
import java.io.Serializable;
public class PersonDTO implements Serializable {
// Serializable은 interface인데 추상메소드가 1도 없다
// 그래서 딱 한번만 써주면 된다
private String name;
private int age;
private double height;
// private이라 외부에서 접근을 못하니 setter, getter 잡아주기
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
}
// Serializable은 항목들을 묶어준 형태로 갖고 있는 것
//Serializable만 넣어주면 된당
////////ObjectWriteMain
package io;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
public class ObjectWriteMain {
public static void main(String[] args) throws IOException {
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("result2.txt"));
// 하나씩 보내지 않고 객체 생성
PersonDTO dto = new PersonDTO();
dto.setName("홍길동");
dto.setAge(25);
dto.setHeight(185.3);
oos.writeObject(dto); // dataStream과 달리 write가 딱 한번 들어감
oos.close();
}
}
// PersonDTO가 serializable이 걸려 있지 않다고 NotSerializableException 오류가 뜸
// 홍길동은 String타입으로 객체인데
// String class는 자체적으로 Serializable Comparable<String>을 갖고 있다
// 문자열은 이름은 그냥 간거
////////ObjectReadMain
package io;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
public class ObjectReadMain {
public static void main(String[] args) throws IOException, ClassNotFoundException {
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("result2.txt"));
PersonDTO dto = (PersonDTO) ois.readObject();
// 자식 = (자식)부모. DTO 로 담겨 있는데 꺼내오는 건 Object를 꺼내오자고 하니
// Casting을 안걸어줘서 에러가 뜨는데,
System.out.println("이름 = " + dto.getName());
System.out.println("나이 = " + dto.getAge());
System.out.println("키 = " + dto.getHeight());
ois.close();
}
}
'JAVA_SE > 11_io' 카테고리의 다른 글
[21.08.26] ByteStream (0) | 2021.08.29 |
---|---|
[21.08.27] Interface 이용한 성적관리 프로그램 만들기1 (Score, ScoreDTO, ScoreImpl, ScoreMain, ScoreForm) (0) | 2021.08.29 |
[21.08.25] Timer(스톱워치) 만들기 (0) | 2021.08.26 |
[21.08.25] DataStream - type에 따라 파일에 데이터 넣고 꺼내는 방법 (0) | 2021.08.25 |
[21.08.25] 메모장 만들기(MenuPane, TryNotePad) (0) | 2021.08.25 |