객체지향 프로그래밍(Object-Oriented Programming, OOP)은 추상화, 캡슐화, 상속, 다형성이라는 네가지 핵심 개념을 바탕으로 설계된다. 1. 추상화 (Abstraction) 복잡한 시스템에서 핵심적인 정보만 추출하고, 불필요한 부분은 숨기는 개념객체의 주요 기능을 정의하는 인터페이스나 추상 클래스를 사용현실 세계의 개념을 프로그래밍에서 표현하기 쉽게 만들어줌 2. 캡슐화 (Encapsulation) 데이터를 숨기고, 외부에서 직접 접근하지 못하도록 제한하는 기법private 키워드로 멤버 변수를 보호하고, getter/setter를 사용해 접근한다.데이터 무결성을 유지하고, 보안성을 높임 예시class Person { private String name; // priva..
1. Interface란? interface는 Java에서 클래스들이 공통으로 가져야 할 메서드를 정의하는 일종의 설계도이다.인터페이스는 객체의 동작(메서드)을 정의하며, 이를 구현하는 클래스는 해당 동작(메서드)를 반드시 구현해야한다. 특징메서드의 선언만 포함하고, 구현은 하지 않음다중 구현이 가능추상 클래스와 달리 필드는 기본적으로 public static final 2. Interface의 문법// 인터페이스 선언interface Animal { void makeSound(); // 추상 메서드 (구현 없음)}// 인터페이스 구현class Dog implements Animal { @Override public void makeSound() { System.out.pri..
📢 Servlet Filter 란?? Servlet Filter는 클라이언트의 요청(Request)과 응답(Response)를 가로채서 중간에 특정 작업을 수행할 수 있는 Servlet Component이다.클라이언트의 요청이 Servlet이나 JSP 에 도달하기 전에, 또는 응답이 클라이언트에 전달되기 전에 동작한다. 🎁 Servlet Filter의 주요 역할 1. 요청(Request) 전처리 사용자 인증 및 권한 체크요청 파라미터 인코딩 처리로그 기록 및 모니터링 2. 응답(Response) 후처리 응답데이터압축보안헤더추가캐싱정책적용 3. 공통작업처리 CORS 설정XSS/SQL Injection 방어 💨 Filter 동작 순서 클라이언트 요청 -> 필터(Filter) -> 서블릿(Servle..
1. 포트원 관리자 콘솔 계정 생성 후 로그인 바로가기 포트원 관리자콘솔단 하나의 솔루션, 결제, 그 이상의 경험admin.portone.io 2. 좌측 메뉴의 결제 연동 -> 연동정보로 들어가기 3. 테스트 를 선택하고 채널 추가 4. 연동모드, 결제대행사, 결제 모듈 선택 5. 채널 이름, 속성, CID 는 일반결제로 저장 이제 카카오페이 결제 api 발급이 끝났다! 그럼 프론트와 서버에 적용을 시켜보자 결제하기 결제 버튼을 하나 만들고 const pay = async () => { const response = await PortOne.requestPayment({ // Store ID 설정 sto..
Thread란? 운영체제에서 스레드는 프로세스 내부에서 실행되는 작은 작업 단위이다. 스레드는 프로세스의 실행 흐름을 구성하는 단위로, 하나의 프로세스 내부에 여러개의 스레드가 포함될 수 있다. 스레드의 특징프로세스들이 서로의 데이터에 접근하는것이 직접적으로 불가능한데 반면, 스레드는 프로세스 내부에 존재하기에 프로세스의 데이터 영역에 접근이 가능하다. 그리고 스레드들끼리 서로의 데이터에 접근 가능하다. IPC 필요없이 프로세스의 데이터를 가져올 수 있다. 스레드도 일종의 작업 단위라서, 프로세스처럼 작업이 처리된다. 이 말은 즉, 스레드도 프로세스처럼 작업을 병렬로 처리해서 속도를 높일 수 있다는 것이다. 스레드는 일종의 함수로 구현된다. 스레드도 함수라서 데이터를 다루고, 데이터를 관리하기 위해 st..
Java란? 1995년에 개발된 객체 지향 프로그래밍 언어이다.또한 플랫폼 독립적이라는 특성도 가지고 있다. 객체지향은 뭐고 플랫폼 독립적이란건 뭘까...? 이것에 대해 알려면 일단 프로그래밍 언어의 동작 방식을 알아야한다. 프로그래밍언어는 인터프리터 언어, 컴파일 언어라는 두 개의 동작방식으로 구분할 수 있다.인터프리터 언어는 코드를 인터프리터를 통해서 실행한다.코드를 실행하려면 인터프리터가 os에 설치되어 있어야 한다.대표적으로 python 등이 있다. 컴파일 언어는 코드를 컴파일(실행파일로 변경)해서 실행한다.대표적으로 C, C++ 등이 있다. 그렇다면 Java는? Java는 컴파일 언어와 인터프리터 언어의 특징을 모두 가지고 있다.아래 그림은 java 파일이 실행되는 과정이다. 소스 코..