본문 바로가기
728x90

분류 전체보기190

[ Java ] Socket Programming CHAPTER 23. Socket Programming 알아가기 오늘은 자바의 네트워크 프로그래밍에서 소켓의 개념과 응용에 대해서 포스팅해보려 합니다! 이전 포스팅을 보면 I/O Stream과 같은 메소드로 타입을 바꾸고 그 바뀐 타입으로 여러 가지 기본적인 통신을 알아보았습니다. 자 그런데 그 통신은 default 값이라고 말할 수 있습니다. 즉, 윈도우에서 제공하는 아주 기본적이고 단순한 구조의 통신이라는 정리할 수 있습니다. 기본적인 통신구조는 잘 알려져있어 보안에도 취약합니다. 그래서 나만의 통신구조를 설계하는데 그것을 바로 소켓 프로그래밍이라고 합니다. 그럼 하나씩 알아봅시다. ■ 프로토콜(Protocol) 프로토콜(Protocol)이란 서로 다른 컴퓨터 간의 의사소통을 위한 통신 규약입니다. .. 2023. 1. 13.
[ Java ] 객체 직렬화(Object serialization) CHAPTER 22. 객체 직렬화 알아가기 오늘은 Java의 직렬화, 역직렬화에 대해서 알아봅시다. ■ 직렬화(serialization)란? 자바 시스템 내부에서 사용되는 Object 또는 Data를 외부의 자바 시스템에서도 사용할 수 있도록 byte 형태로 데이터를 변환하는 기술입니다. 또한 JVM(Java Virtual Machine)의 메모리에 상주(힙 또는 스택)되어 있는 객체 데이터를 byte 형태로 변환하는 기술이라고도 합니다. 그렇다면 직렬화는 왜 배워야 할까?? 우리는 파일에 텍스트를 기록하고, 이전 데이터를 기록하는 방법은 많이들 알고 계시겠습니다. 그런데 만약 이런 종류의 데이터들이 아니라 객체를 파일로 저장하거나 읽어올 수 있을까요?? 직렬화만 배운다면 할 수 있습니다. 가 ) 직렬화.. 2023. 1. 11.
[ Java ] I/O Stream CHAPTER 21. 입출력 알아가기 오늘은 데이터 입출력에 대한 포스팅을 해보려 합니다!! 프로그램에서는 데이터를 외부에서 읽고 다시 외부로 출력하는 작업이 빈번하게 일어납니다. 데이터는 사용자로부터 키보드, 마우스 등을 통해 입력될 수도 있고, 파일 또는 네트워크를 통해 입력될 수도 있습니다. 또한 반대로 데이터를 사용자에게 모니터나 파일 등으로 출력할 수도 있는데 자바에서 데이터는 어떻게 입출력이 될까요?? ■ Stream이란? Java에서는 파일이나 콘솔의 입출력을 직접 다루지 않고, stream(스트림)이라는 흐름을 통해 다룹니다. stream이란 실제의 입력이나 출력이 표현된 데이터의 이상화된 흐름을 의미합니다. 즉 단일 방향으로 연속적으로 흘러가는 것을 말하는데, 즉, stream은 운영체제.. 2023. 1. 10.
[ Java ] GUI 프로그래밍 응용 오늘은 이전 포스팅에서 알아보았던 GUI 프로그래밍 예제를 통해서 알아봅시다. 1. FlowLayout FlowLayout은 몇 개의 컴포넌트를 자연스러운 크기로 한 줄로 순서대로 배치합니다. 그럼 예제를 통해서 알아봅시다. public class FlowlayoutEx1 extends JFrame { public FlowlayoutEx1(){ setTitle("FlowLayOut 예제"); setSize(300,200); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE); // flowlayout 설정 setLayout(new FlowLayout(FlowLayout.RIGHT,30,40)); //FloLayout,정렬위치,컴포넌트간 좌우간격 30픽셀.. 2023. 1. 9.
[ Java ] GUI 프로그래밍 개념 CHAPTER 20. GUI 프로그래밍 알아가기 오늘은 GUI에 대해서 포스팅해보려 합니다! 사실 순수 자바 강의에는 GUI가 포함되지 않는 경우가 많습니다. 변수선언, 변수의 종류, 함수정의...등을 설명하고 이것의 결과를 cmd창에 출력하는 것으로만 강의를 진행합니다. 자바로 처음 프로그램에 입문하시는 분들에게는 조금 어려운 내용이 될 수 있습니다..!! ■ GUI란? GUI(Graphical User Interface)는 그래픽 기반의 인터페이스로 우리가 흔히 보는 윈도우 애플리케이션처럼 윈도우 창을 가지고 있으며 버튼을 클릭하고 텍스트를 입력하는 등의 행위를 할 수 있는 화면을 말합니다. Java를 공부하다 보면 대체 왜 이런 연습을 하는지도 모르겠고 앞으로 내가 Java를 가지고 무엇을 할 수 .. 2023. 1. 7.
[ Spring ] Spring 용어 키워드 간단 정리 오늘부터 Spring의 포스팅을 시작하려고 합니다! 이전 포스팅은 Java 기초 부분에 대해서 포스팅을 해보았는데 어느 정도 Java에 대해서 알았다면 이제 단계에 맞춰서 Spring에 대해서 공부를 시작할 수 있는데, 오늘은 스프링 부트를 공부할 때 Java에 대한 기본적인 지식은 있었지만 그렇다 하더라도 모르는 용어나 키워드가 너무 많기 때문에 Spring 관련 키워드나 용어를 정리해서 작성해보려고 합니다! 1 ) Spring 이란? 스프링은 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크입니다. spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자반 기반의 엔터프라이즈 애플리케이션을 위한 프로그래밍 및 Configuration Model을 제공합니다. 1-2 ) Spring 특징.. 2023. 1. 6.
728x90