HTTP란? HyperText Transfer Protocol의 약어로 텍스트 기반의 통신 규약을 의미한다. 인터넷에서 데이터를 주고 받을 수 있는 프로토콜이다. 주요 특징 클라이언트-서버 모델 무상태성 요청-응답 모델 비연결성 텍스트기반 HTTP와 HTTPS의 차이점HTTP는 웹에서 데이터를 전송하는 프로토콜로 데이터를 암호화히지 않고 평문으로 전송한다. HTTPS는 HTTP에 SSL/TLS 암호화 계층을 추가한 프로토콜로 데이터 전송 시 암호화를 통해 보안성을 제공한다. 쿠키와 세선의 차이점 쿠키 클라이언트 측에 저장되는 데이터로 서버에서 클라이언트로 전송됨. 사용자의 브라우저에 저장되며 클라이언트와 서버 간의 상태를 유지하기 위해 사용 만료 시간을 지정할 수 있으며, 브라우저 재시작 후에도 지속됨...
데이터베이스란?데이터베이스는 구조화된 정보 또는 데이터의 조직화된 모음으로서 일반적으로 컴퓨터 시스템에 전자적으로 저장된다. 데이터베이스는 일반적으로 DBMS에 의해 제어된다. 연결된 애플리케이션과 함께 데이터와 DBMS를 묶어 데이터베이스 시스템(줄여서 데이터베이스)라고 한다. SQL과 NoSQL 데이터베이스의 차이점은?SQL관계형 데이터베이스로 SQL을 사용하여 데이터에 접근하고 조작한다. 스키마가 고정되어 있으며 ACID 트랜잭션을 지원한다. 스키마에 맞춰 데이터를 관리하기 때문에 명확한 데이터 구조를 보장한다. 시스템이 커지면 쿼리가 복잡해지고 성능이 저하됨. NoSQL비관계형 데이터베이스이다. 스키마가 유연하고 비정형 데이터를 처리하는데 적합하다높은 확장성과 성능을 제공한다. 데이터 분산이 용..
자바의 장단점장점JVM을 통해 다양한 플랫폼에서 실행 가능하다. (플랫폼 독립성)객체 지향 언어로 객체 지향 프로그램을 통해 모듈화, 유지보수성, 재사용성 향상.가비지 컬렉션으로 메모리 누수 방지멀티스레딩을 지원해 동시성 프로그래밍이 용이하다. 클래스로더에 의해 동적 로딩을 지원해서 실행 시 모든 객체를 생성하지 않고, 필요한 시점에 클래스를 생성한다. 단점 네이티브 코드에 비해 상대적으로 느리다. JVM 사용으로 인한 추가적인 메모리 소비JDK, JRE, JVM의 차이는?JDK(Java Development Kit) Java 프로그램을 개발하고 실행하기 위한 도구의 모음. JRE와 개발도구(javac, java, javadoc...)을 포함. JRE(Java Runtime Environment) Jav..
집계 함수COUNT값의 합계를 반환SELECT SUM(salary) AS total_salary FROM employees;AVG값의 평균을 반환SELECT AVG(salary) AS average_salary FROM employees;MAX최대값을 반환SELECT MAX(salary) AS max_salary FROM employees;MIN최소값을 반환SELECT MIN(salary) AS min_salary FROM employees; 수학 함수ABS절대값을 반환SELECT ABS(-10) AS absolute_value; ROUND숫자를 반올림함SELECT ROUND(123.456, 2) AS rounded_value;CEIL/CEILING숫자를 올림함SELECT CEIL(123.456) AS ..
JOINJOIN은 데이터베이스의 여러 테이블에서 가져온 레코드들을 조합하여 하나의 테이블로 반환해 준다. (INNER) JOIN조인하는 테이블의 ON 조건이 일치하는 결과만 출력해줌. MySQL에서는 JOIN, INNER JOIN, CROSS JOIN이 모두 같은 의미로 사용됨. SELECT 조회할 컬럼FROM 테이블1, 테이블2[WHERE 조건문]SELECT 조회할 컬럼FROM 테이블1(INNER) JOIN 테이블2ON 테이블1.컬럼 = 테이블2.컬럼[WHERE 조건문] NATURAL JOIN (자연 조인)내부 조인에 속하는 조인으로, 두 테이블에서 공통된 컬럼명을 갖는 컬럼들이 모두 조인된다. SELECT 조회할 컬럼FROM 테이블1NATURAL JOIN 테이블2[WHERE 조건문] [LEFT/R..
SQL(Structured Query Language)는 데이터베이스에서 데이터를 저장, 조회, 수정, 삭제할 때 사용하는 언어이다. SQL의 문법은 DDL(데이터 정의어), DML(데이터 조작어), DCL(데이터 제어어) 나눌 수 있다. DDL(데이터 정의어)데이터베이스 구조 정의에 사용하는 언어. 테이블이나 컬럼등을 생성, 수정, 삭제한다. CREATE새로운 테이블을 생성. 테이블의 구성, 속성에 관한 제약을 정의하고, 기본키 및 외래키를 정의한다. CREATE TABLE Persons ( PersonID int PRIMAY KEY, LastName varchar(255), FirstName varchar(255), Address varchar(255), City var..
Spring과 SpringBoot의 차이점SpringBoot는 Spring 프레임 워크 프로젝트를 간편하게 세팅할 수 있게 해주는 서브 프로젝트이다. SpringSpringBoot목적엔터프라이즈 애플리케이션의 개발을 더 쉽게스프링 개발을 더 쉽게설정 파일개발자가 수동으로자동 구성XML일부 파일은 XML로 직접 생성 및 관리사용 x인메모리 데이터베이스지원하지 않음인메모리 데이터베이스 자동 설정 지원서버프로젝트를 띄우는 서버 별도로 설정내장형 서버를 제 IoC란?Inversion of Control의 줄임 표현으로, 제어의 역전이라는 뜻이다. 객체 지향 설계에서 클래스 간의 결합도를 느슨하기 위해 다양한 종류의 제어를 반전시키는 것을 의미한다. 객체를 직접 생성하는 것이 아니라 어디선가에서 받아와서 사용한..