땅지원
땅지원's Personal blog
땅지원
전체 방문자
오늘
어제
  • 전체 (353)
    • Frontend (2)
      • React (2)
    • Backend (90)
      • Java (16)
      • Python (19)
      • Spring (23)
      • Database (21)
      • Troubleshooting (8)
    • DevOps (27)
      • ELK (13)
    • CS (40)
    • OS (2)
      • Linux (2)
    • Algorithm (95)
      • concept (18)
      • Algorithm Problem (77)
    • 인공지능 (25)
      • 인공지능 (12)
      • 연구노트 (13)
    • 수업정리 (35)
      • 임베디드 시스템 (10)
      • 데이터통신 (17)
      • Linux (8)
    • 한국정보통신학회 (5)
      • 학술대회 (4)
      • 논문지 (1)
    • 수상기록 (8)
      • 수상기록 (6)
      • 특허 (2)
    • 삼성 청년 SW 아카데미 (6)
    • 42seoul (12)
    • Toy project (3)
    • 땅's 낙서장 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 20.11.6 BB21플러스 온라인 학술대회
  • 20.10.30 한국정보통신학회 온라인 학술대회

인기 글

태그

  • I
  • ㅗ
  • D
  • 이것이 리눅스다 with Rocky Linux9
  • E

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
땅지원
Backend/Java

Java 직렬화

Backend/Java

Java 직렬화

2022. 7. 27. 17:55

books.dat 이라는 파일을 읽어들일때 직렬화를 해서 객체에 할당을 하려고 한다.

 

class Person implements java.io.Serializable{
	String transient name;
	int age;
    
	public Person(String name, int age) {
		this.name = name;
		this.age = age;
	}
}

객체를 만들 때 보통 "이지원", 18이라고 하게되면 알맞게 저장이 되지만

위처럼 name에 대해서 직렬화를 시키지 않겠다라고 선언해버리면 name에 대한 부분이 저장이 되지 않는다.

 

File.separator

File.separator는 프로그램이 실행 중인 OS에 해당하는 구분자를 리턴한다.

File file = new File("/tmp/" + File.separator + "text.txt");

System.out.println(file.toPath());

 

Q. 왜 바이트로 내보내야됨? 다른걸로 하면 안됨? 바이트로 하면 1개씩밖에 못하니까 성능이 별로잖아

그래서 ByteArrayInputStream 같은거 사용해서 여러개 바이트를 동시에 내보냄
네트워크 통신단위가 byte라서. 
일반 데이터 속도 단위 : 여러 차례의 초당 비트(bit/s)와 초당 바이트(B/s)
한글이 아닌 이미지,데이터 같은것들은 바이트로 내보내기 가능


Q. 한글같은건 bytestream써서했는데 글자가 깨지고 정상적이지않음

==> char형은 xxStream안쓰고 reader/writer써야됨

File경로에서 . 이 같는 의미
상대경로의 기준은 java program을 실행하는 위치(소스와 무관)
어디서 실행하느냐에 따라 다름
ex) 이클립스에서 run돌릴 때 vs cmd에서 bin폴더가서 java파일 실행했을 때 상대경로가 모두 다름
src폴더를 가지고 경로를 활용하게 되면 위험함. bin폴더로 쓰자
why?)
개발을 다 하고 src폴더를 참고해서 줄꺼임?
절때 아님. bin폴더에서 컴파일 된 결과값 애들만 주지. src에 있는 소스코드는 개발자가 관리해야되니까
애초에 경로 자체도 bin으로 하는 습관을 기르면 좋다는 이야기임

 

'Backend > Java' 카테고리의 다른 글

Java 순열과 조합  (0) 2022.08.04
Java 코딩테스트를 위한 문법  (0) 2022.08.02
Java 예외 처리  (0) 2022.07.26
Java Generic, Collection에 대해  (0) 2022.07.26
Java Override & Overload  (0) 2022.07.20
  • File.separator
'Backend/Java' 카테고리의 다른 글
  • Java 순열과 조합
  • Java 코딩테스트를 위한 문법
  • Java 예외 처리
  • Java Generic, Collection에 대해
땅지원
땅지원
신입 개발자의 우당탕탕 기술 블로그

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.