JAVA 10

session 객체? + 쿠키

💜 session 객체 웹 애플리케이션에서 클라이언트와 서버 간의 상태를 유지하고 정보를 저장하는데 사용되는 객체히다. HTTP 프로토콜의 stateless 특성 때문에 각 요청 간에 상태를 유지할 수 없지만, 세션은 이를 극복하기 위한 메커니즘으로 도입되었다. 세션은 일반적으로 다음과 같은 용도로 사용된다. 1) 상태 유지 세션은 클라이언트가 서버에 연속적으로 접속하는 동안 정보를 유지하는데 사용된다. 사용자가 로그인하면 서버는 세션을 생성하고, 이 세션을 통해 사용자와 관련된 정보(예: 사용자 식별정보, 설정 등)를 저장하여 유지할 수 있다. 2) 장바구니와 같은 데이터 저장 쇼핑 카트와 같은 임시 데이터를 저장하고 유지하는 데이도 세션이 사용된다. 사용자가 여러 페이지에서 상품을 선택하고 장바구니에..

JAVA 2023.11.28

application 객체?

💜application 객체 Java 웹 애플리케이션에서 모든 사용자 간에 데이터를 공유하는데 사용되는 객체이다. 이 객체는 웹 애플리케이션이 서버에 배포될 때 생성되어 애플리케이션이 실행되는 동안 살아있다. 각 사용자의 세션과는 달리, application 객체는 모든 세션에서 공통으로 사용되는 데이터를 저장하는데 적합하다. 웹 애플리케이션 전역에서 접근할 수 있는 컨텍스트(컨텍스트는 서블릿 및 JSP에서 실행되는 웹 애플리케이션에 대한 정보를 제공하는 일종의 컨테이너) 객체이다. 이를 통해 여러 사용자 간에 데이터를 공유하거나 전역 상태를 유지할 수 있다. 주요 특징과 사용 예시: 1) 데이터 공유: application 객체를 사용하면 모든 사용자가 공통적으로 접근 가능한 데이터를 저장할 수 있다...

JAVA 2023.11.28

컬렉션(Collection, List/Set/Map)

❤ 배열의 문제점 1. 한 번 크기를 지정하면 변경할 수 없다. - 공간 크기가 부족하면 에러가 발생 -> 할당 시 넉넉한 크기로 할당하게 됨 (메모리 낭비) - 필요에 따라 공간을 늘리거나 줄일 수 없음 2. 배열에 기록된 데이터에 대한 중간 위치의 추가, 삭제가 불편하다. - 추가, 삭제할 데이터부터 마지막 기록된 데이터까지 하나씩 뒤로 밀어내고 추가해야 함 (복잡한 알고리즘) 3. 한 타입의 데이터만 저장 가능하다. ❤ 컬렉션의 장점 1. 저장하는 크기의 제약이 없다. 2. 추가, 삭제, 정렬 등의 기능 처리가 간단하게 해결된다. - 자료를 구조적으로 처리하는 자료구조가 내장되어 있어 알고리즘 구현이 필요 없음 3. 여러 타입의 데이터가 저장 가능하다. - 객체만 저장할 수 있기 때문에 필요에 따라..

JAVA 2023.09.26

클래스(Class)와 객체(Object)

✔️ 클래스(Class) 클래스는 객체지향프로그램밍에서 객체를 생성하기 위한 템플릿이며, 객체의 속성(데이터)과 행위(메서드)를 정의하는 데 사용된다. 클래스는 실제로 데이터를 저장하지 않으며, 객체의 설계도나 구조를 정의하는 역할을 한다. 클래스를 기반으로 여러 개의 객체를 생성할 수 있으며, 이러한 객체는 클래스의 인스턴스이다. 클래스의 구성요소는 다음과 같다. • 속성(fields 또는 멤버 변수) 클래스의 속성은 객체의 상태를 나타내는 데이터이다. 예를 들어, 사람 클래스에서 이름, 나이, 주소 등의 속성이 있을 수 있다. • 메서드(methods) 클래스의 메서드는 객체의 동작이나 기능을 정의하는 코드 블록이다. 메서드는 객체의 속성을 조작하거나 특정 작업을 수행한다. • 생성자(construc..

JAVA 2023.08.17

객체지향언어란?

✔️ 객체지향언어 (Object-Oriented Programming Language) 소프트웨어 개발 방법론 중 하나로, 현실 세계의 사물을 모델링하여 소프트웨어를 구성하는 프로그래밍 패러다임이다. 이 방법론은 코드의 재사용성, 유지보수성, 확장성 등을 향상시키는 데 목적을 두고 있다. 객체지향언어는 클래스와 객체의 개념을 중심으로 하며, 객체들 간의 상호작용을 통해 프로그램을 구성한다. 객체지향언어의 주요 특징은 다음과 같다. 1. 클래스와 객체 객체지향언어에서는 클래스(class)와 객체(object)라는 개념을 사용한다. 클래스는 특정한 속성과 행위(메서드)를 가진 객체들을 정의한 템플릿이다. 객체는 클래스의 인스턴스로, 실제로 메모리에 할당되어 사용되는 것을 나타낸다. 2. 캡슐화(Encapsu..

JAVA 2023.08.17

메서드(Method)란?

-- 자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다. 그중에서 메소드란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있다. ✔️ 메서드란? (method) 객체 지향 프로그래밍에서 클래스 내에서 특정 작업을 수행하는 코드 블록을 말한다. 메서드는 클래스의 동작이나 기능을 정의하며, 객체의 상태를 변경하거나 특정 계산을 수행하는 역할을 한다. 메서드는 클래스의 멤버로서 클래스 내부에서 정의되며, 외부에서 호출하여 사용할 수 있다. 메서드의 특징과 역할은 다음과 같다. • 코드 재사용 메서는 작업의 논리를 단일 코드 블록으로 묶어서 중복을 방지하고 코드의 재사용성을 높이는 데 도움을 준다. • 기능 추상화 클래스의 기능..

JAVA 2023.08.17

접근 제어자란? (public, protected, default, private)

✔️ 접근 제어자(Access Modifier)란? 객체 지향 프로그래밍에서 클래스의 멤버(필드, 메서드, 내부 클래스 등)에 대한 접근 권한을 제어하는 속성이다. 접근 제어자는 클래스의 캡슐화, 정보 은닉, 보안성 등을 관리하고 조절하는 데 사용된다. 다른 클래스나 코드에서 해당 멤버에 접근할 수 있는지 여부를 결정하며, 코드의 모듈화와 유지 보수를 도와준다. 주요 접근 제어자에는 일반적으로 다음과 같은 네 가지 종류가 있다. 1. public public 접근 제어자는 해당 멤버가 어떤 클래스든 접근 가능하도록 허용한다. 다른 클래스에서도 자유롭게 접근할 수 있으며, 해당 멤버에 대한 외부 공개 인터페이스를 제공할 때 사용된다. • public 클래스와 메서드 public 접근 제어자를 사용하여 클래..

JAVA 2023.08.17

형변환(casting) (자동 형변환, 강제 형변환)

✔️ 형변환이란? 변수나 값의 타입을 다른 타입으로 변환하는 것을 말한다. 자바에서는 기본 데이터 타입과 객체 타입 간의 형변환을 다룰 수 있다. 두가지 형변환 유형이 있다. ✔️ 컴퓨터의 값 처리 원칙 같은 종류 자료형만 대입 가능하다. 같은 종류 자료형만 계산 가능하다. 계산의 결과도 같은 종류의 값이 나와야 한다. -> 이러한 원칙이 지켜지지 않은 경우에 형변환이 필요하다. 1. 암시적(자동) 형변환 (Implicit or Automatic Casting) 암시적 형변환은 작은 크기의 데이터 타입이 큰 크기의 데이터 타입으로 자동으로 변환되는 것을 말한다. 이때 데이터의 손실이 발생하지 않는다. 암시적 형변환은 자바 컴파일러에 의해 자동으로 처리되며, 개발자가 별도의 코드를 작성하지 않아도 된다. ..

JAVA 2023.08.15

변수에 대해서

✔️ 변수란 무엇일까? 변수는 어떤 저장하기 위한 메모리(RAM) 공간이다. 프로그램의 실행 중에 값을 저장하고 사용할 수 있도록 메모리 공간을 할당하는 역할을 한다. ✔️ 변수의 구성 변수는 이름(identifier)과 값(value)으로 구성된다. 이름은 변수를 식별하는데 사용되며, 영문자, 숫자, 언더스코어(_)로 이루어진다. 특수문자는 '_'와 '$'만을 허용하는데 '$'는 내부 클래스에서 사용 가능하고 '_' 사용 시 컴파일 에러는 없지만 관례상 사용하지 않는 것이 좋다. 예약어를 사용하면 안되며 대소문자가 구분되고 길이 제한이 없다. 또한 여러 단어 이름은 단어의 첫 글자를 대문자로 하며, 첫 시작 글자는 소문자로 하는 것이 관례이다. ➕ 주요 예약어 ✔️ 변수의 선언 변수를 사용하기 전에 먼..

JAVA 2023.08.11

public static void main(String[] args) 무슨 의미지?

✔️ public static void main(String[] args) 자바 프로그램의 실행 진입점(entry point)을 정의하는 메서드이다. 이 메서드는 프로그램이 실행될 때 자동으로 호출되며, 프로그램의 시작점을 나타낸다. 이 메인 메소드는 자바 어플리케이션 실행 시 제일 먼저 동작하며 어느 객체에서든 접근할 수 있으며 자바가 컴파일 되는 순간 정의되는 돌려주는 값이 없는 함수인 것! public static void main(String[] args) 단 한개만 엔트리 포인트로 정의했기 때문에 오버로딩 된 다른 형태의 main 함수는 엔트리 포인트로 동작하지 않는다. • public main 메서드가 다른 클래스에서도 접근 가능하도록 공개되어 있다는 의미이다. 접근제어자는 외부에서 접근할 수..

JAVA 2023.08.10