반응형

JAVA/공부 28

GET 방식과 POST 방식

HTTP 프로토콜이 제공하는 7개의 메서드 중 웹 서비스 개발 시에 주로 사용하는 GET 메서드와 POST 메서드. 요청과 응답 사용자가 URL을 브라우저 주소창에 작성하고 엔터를 누르면 해당 웹페이지로 이동한다. 사용자에게 웹페이지를 보여주는 내부 처리에서, 클라이언트 컴퓨터가 서버 컴퓨텅[ 웹페이지를 보여달라고 하는 것을 요청이라고 하고, 서버 컴퓨터가 요청한 클라이언트 컴퓨터에게 웹페이지 내용을 표현하기 위해 HTML 문서로 보내는 것을 응답이라고 한다. HTTP 패킷 클라이언트가 서버로 요청을 보낼 때, 보내는 데이터를 HTTP 패킷이라고 한다. HTTP 프로토콜을 쓰므로, 앞에 HTTP가 붙고 인터넷을 통해 보내는 데이터는 패킷이라 하여, 이를 합쳐 HTTP 패킷이라 한다. 구조는 헤더와 바디로..

JAVA/공부 2022.09.04

쿠키와 세션(+캐시)

쿠키(Cookie) · 정의 클라이언트 로컬(정보를 저장하는 곳)에 저장된 key와 value 값이 들은 작은 데이터 파일. · 구조 이름 : 각 쿠키를 구별하는 데에 사용. 값 : 이름과 관련된 값. 유효 시간 : 쿠키 유지 시간. 도메인 : 쿠키를 전송할 도메인. 경로 : 쿠키를 전송할 요청 경로. · 특징 - 사용자 인증이 유효한 시간을 명시할 수 있으며, 유효 시간이 정해지면 브라우저가 종료되어도 인증이 유지된다. - 클라이언트에 300개의 쿠키를 저장할 수 있고, 도메인 하나당 20개의 값을 가질 수 있다. 쿠키 하나의 값은 4KB까지다. - Response Header에 Set-Cookie 속성을 사용하면 클라이언트에 쿠키를 만들 수 있다. - 사용자가 따로 쿠키를 요청하지 않아도 브라우저가 ..

JAVA/공부 2022.09.03

OSI 7계층

OSI 7계층 OSI : Open System Interconnection의 약어. 네트워크 통신 과정을 7단계로 나눈 것을 의미한다. 유래 초창기 컴퓨터는 통신 시의 HW/SW의 호환을 고려하지 않고 개발되었다. 이에 국제 표준화 기구(ISO)는 다른 컴퓨터 간 통신 기능을 7계층으로 구분해 각 계층마다의 표준화된 서비스와 프로토콜을 규정하여, 서로 다른 환경의 컴퓨터 간 통신이 가능해졌고, 각 계층은 독립적인 역할을 수행할 수 있어 문제가 발생하여도 계층별로 원인 분석을 통해 원만한 해결이 가능해졌다. 헤더가 붙는 이유는 데이터를 전송할 때 각 층을 인식할 수 있어야 하기 때문이다. Encapsulation and Decapsulation 데이터 전송은 7계층에서 시작해 제일 하위 계층인 1계층까지 ..

JAVA/공부 2022.09.02

자바 Adapter 클래스

이벤트를 처리하기 위해선 인터페이스를 사용해야 하는데, 인터페이스엔 구현해야 하는 추상 메서드가 제공된다. Adapter 클래스가 인터페이스를 구현했기 때문에 이벤트 처리를 구현할 때 인터페이스 대신 Adapter 클래스를 사용해 원하는 메서드만 구현해 쓰면 된다. 그렇지 않으면 실제로 필요하지 않은 메서드도 모두 코드에 작성해줘야 하기 때문에 지저분해지기 때문이다. 사용방법 1) 외부 클래스에 별도 클래스를 생성해 생성자로 필드 공유. import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.Key..

JAVA/공부 2022.09.01

자바 AWT 이벤트

이벤트 소스 이벤트가 발생할 수 있는 대상. 컴포넌트. 이벤트 리스너 이벤트 소스에서 이벤트가 발생하는지 검사하닥 이벤트가 발생되면 실제적으로 이벤트를 처리할 수 있는 인터페이스 이벤트 핸들러 이벤트 리스너에 전달된 이벤트를 실제로 처리할 수 있도록 이벤트 리스너에 포함되어 있는 메서드로 발생된 이벤트 객체를 받아 실제적인 처리를 해주는 기능을 가진다. import java.awt.BorderLayout; import java.awt.Button; import java.awt.Frame; import java.awt.Panel; import java.awt.TextArea; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; ..

JAVA/공부 2022.09.01

스레드

프로그램 : 파일들의 집합 프로세스 : 메모리 상에 로딩된 프로그램 멀티 프로세스 : 동일 프로그램 메모리에 여러 번 로딩하면 여러 개의 프로세스가 동작하는 것. 스레드 : CPU를 사용하는 최소 단위. CPU와 메모리의 작업 수행 속도 차 발생해서 CPU는 메모리의 프로세스 내부 스레드와 대화함. · 스레드 동시성 순차적 : 단일 스레드 작업 동시성 : 처리할 작업 수가 CPU의 코어 수보다 적을 때병렬성 : 처리할 작업 수가 CPU의 코어 수보다 많을 때 · 스레드 생성 방법 1. Thread 클래스 상속받아 run() 메서드를 오버라이딩2.① Runnable 인터페이스를 구현한 Runnable 객체를 생성 (run()메서드 사용)② Thread 객체를 생성할 때 생성한 Runnable 객체를 생성자..

JAVA/공부 2022.07.11

예외 처리

예외 처리 프로그램이 멈출 때까지 프로그램을 가동해 끝까지 잘 마무리 해주도록 하는 것, (프로그램 강제종료 되지 않도록) · 에러 : JVM 자체에서 발생하는 오류로, 개발자가 해결할 수 없는 오류. · 예외 : 개발자가 해결할 수 있는 오류. (해결보단 차선책을 하는 것..) · 예외 최상위 클래스 : Exception, 오류 최상위 클래스 : Error. 모두 Throwable 클래스를 상속받음. -> 예외와 오류 모두 Throwable 클래스의 기능을 포함한다. · Exception 클래스 1. 일반 예외 : Exception 클래스 직접 상속받는 예외 클래스. 컴파일 전에 예외 발생 문법을 검사. 예외 처리 하지 않으면 문법 오류 발생. 2. 실행 예외 : RuntimeException 클래스를..

JAVA/공부 2022.07.11

이너 클래스와 이너 인터페이스

이너 클래스 : 클래스 내부에 포함되는 클래스 이너클래스는 인스턴스 멤버 이너 클래스, 정적 이너 클래스, 지역 이너 클래스, 익명 이너 클래스로 나뉠 수 있다. 인스턴스 이너 클래스 객체 내부에 멤버의 형태로 존재. 자신을 감싸고 있는 아우터 클래스의 모든 접근 지정자의 멤버에 접근 가능하다. · 바이트 코드 표현 아우터 클래스 : 아우터 클래스.class 이너 클래스 : 아우터 클래스$이너 클래스.class ※ 이너 클래스는 단독으로 사용이 불가하고 반드시 아우터 클래스를 이용해야만 사용할 수 있다. · 객체 생성하기 이너 클래스의 객체를 생성하려면 아우터 클래스의 객체를 먼저 생성해야 한다. 아우터 클래스 객체의 참조변수를 통해 객체 내부 이너 클래스의 생성자를 아래와 같이 호출할 수 있다. 아우터..

JAVA/공부 2022.07.11

자바 제어자-2

final 제어자 필드, 지역 변수, 메서드, 클래스 앞에 위치할 수 있다. 각 위치마다 의미가 다르다. · final 변수 : 한 번 대입된 값을 수정할 수 없다(변수가 저장한 최종값. 최종 변수) final 필드의 초기화는 반드시 생성자에서 한다. 일반 필드와 달리 강제 초기화되지 않기 때문이다. ※ final 변수에 원래 값을 또 대입해도 될까? final 변수 값을 변경할 때는 값을 기준이 아니라 한 번 대입을 했는지 안했는 지가 초기화할 수 있는 기준이 된다. 값이 동일하던 안하던 필드에 값이 한 번 대입되면 이후에 또 값을 입력하는 행위는 불가하다 · 메모리 구조 필드는 일단 멤버이기 때문에 final이든 아니든 객체 속에 포함되지만 객체 생성 시 final 필드값은 상수 영역에 1개 복사된다..

JAVA/공부 2022.07.02

클래스 상속과 다형성

상속 부모 클래스의 멤버를 내려받아 자식 클래스 내부에 포함시키는 자바 문법 요소 -> 부모 클래스는 자식 클래스들의 공통적인 특징을 가지고 있는 클래스 · 장점 1. 코드의 중복성이 제거된다 2. 클래스의 다형적 표현이 가능하다 ※ 다형적 표현 1개의 객체를 여러 형태로 표현할 수 있는 특성 · 문법 class 자식클래스 extends 부모클래스 { //.. } ※ 자식 클래스는 부모클래스를 다중 상속 불가 -> 모호성 발생 가능하기 때문에. (부모 클래스가 여러 자식 클래스를 상속하는 건 무관) · 상속 시 메모리 구조 class A { int m; void abc() {} } class B extends A { int n; void bcd() {} } B b = new B(); 자식 클래스 B의 객..

JAVA/공부 2022.07.02
반응형