전체 글
-
[백준] 1991번 트리 순회 c++Coding Test/BaekJoon 2023. 12. 13. 10:54
문제 설명 문제 바로가기 제한 사항 시간 제한 : 2초 메모리 제한 : 128MB 풀이 #include #include #include #include using namespace std; int arr[2][27]; void preOrder(int x, string& str) { if (x < 0) { return; } str.push_back(x + 'A'); preOrder(arr[0][x], str); preOrder(arr[1][x], str); } void inOrder(int x, string& str) { if (x < 0) { return; } inOrder(arr[0][x], str); str.push_back(x + 65); inOrder(arr[1][x], str); } void p..
-
[CS] HTTP HTTP/2 HTTPS QUICComputer Science/CS 2023. 12. 7. 19:05
HTTP Hypertext Transfer Protocol 클라이언트와 서버 간 통신을 위한 통신 규칙 세트 또는 프로토콜입니다. 사용자가 웹 사이트를 방문하면 사용자 브라우저가 웹 서버에 HTTP 요청을 전송하고 웹 서버는 HTTP 응답으로 응답합니다. 웹 서버와 사용자 브라우저는 데이터를 일반 텍스트로 교환합니다. 간단히 말해 HTTP 프로토콜은 네트워크 통신을 작동하게 하는 기본 기술입니다. HTTP특징 ● Stateless(무상태) : 서버가 클라이언트의 상태를 보존하지 않음 ▷ 장점 : 서버 확장성 높음(응답 서버를 바꿀 수 있고 무한한 서버 증설 가능) ▷ 단점 : 클라이언트가 추가 데이터 전송 ▷ 상태 유지는 쿠키나 세션 사용 → 쿠키, 세션, 토큰을 사용해서 상태를 기억할 수 있다. 상태를..
-
[CS] REST APIComputer Science/CS 2023. 12. 7. 18:39
REST API Representational State Transfer 분산 네트워크 상에서 자원(리소스)을 표현하고 그 상태를 전송하는 아키텍처 스타일입니다. REST API란 서버 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식입니다. 클라이언트에서 정보를 요청하면 서버는 특정 기기에 종속되지 않고 모든 기기에 통용할 수 있는 JSON데이터를 응답으로 보냅니다. 서버가 클라이언트의 요청에 체계적으로 대응할 수 있어서 서버 프로그램의 재사용과 확장성이 좋아집니다. REST HTTP URL로 서버의 자원을 명시하고, HTTP 메서드(POST, GET, PATCH/PUT, DELETE)로 해당 자원에 대해 CRUD하는 것을 말합니다. API 클라이언트가 서버의 자원을 요청할 수 있도록 ..
-
[SpringBoot] Lombok 롬복Programming/SpringBoot 2023. 12. 7. 16:07
Lombok이란 코드를 간소화해 주는 라이브러리입니다. 자바의 라이브러리로 반복되는 메소드를 Annotation을 사용해서 자동으로 작성해주는 라이브러리입니다. Lombok을 이용해서 작성한 코드는 컴파일 과정에서 Annotataion을 이용해서 코드를 생성하고 .class에 자동 컴파일 됩니다. Lombok 설치 프로젝트 탐색기에서 firstproject > src >build.gradle 파일에서 설정 코드를 작성합니다. dependencies { compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' } 편집기에 코끼리 모양의 새로고침 아이콘을 클릭합니다. 롬복 라이브러리가 다운로드 되는지 확인합니다...
-
[SpringBoot] JPAProgramming/SpringBoot 2023. 12. 7. 15:12
JPA Java Persisitence API는 자바 진영의 ORM기술 표준입니다. - ORM (Object Relational Mapping) : 객체와 테이블을 매핑해서 패러다임의 불일치를 개발자 대신 해결 DB에 데이터를 기록해야 할때, 자바 언어로 저장할 수 없습니다. DB는 SQL언어를 사용하기 때문입니다. JPA는 자바 언어로 DB에 명령을 내리는 도구입니다. 데이터를 객체 지향적으로 관리할 수 있게 해줍니다. JPA의 핵심 도구로는 엔티티와 리파지터리가 있습니다. Entity 자바 객체를 DB가 이해할 수 있게 만든 것으로, 이를 기반으로 테이블이 만들어집니다. Repository 엔티티가 DB속 테이블에 저장 및 관리될 수 있게 하는 인터페이스 1. DTO를 엔티티로 변환하기 2. 리파지터..
-
[SpringBoot] MVC패턴 + REST API + JPA 프로젝트 설계Programming/SpringBoot 2023. 12. 7. 14:09
MVC + JPA 프로젝트 설계 Form을 사용한 웹 설계는 아래와 같습니다. REST API를 사용하지 않는다면 응답을 뷰 템플릿으로 하게 됩니다. MVC + REST API + JPA 프로젝트 설계 REST API를 사용하면 요청과 응답 데이터가 대표적으로 JSON을 사용하여 통신하게 됩니다. 클라이언트와 서버 간 처리 흐름은 크게 4가지로 나눌 수 있습니다. - MVC (Model-View-Controller) : 서버 역할을 분담해 처리하는 기법 - JPA (Java Persisitence API) : 서버와 DB간 소통에 관여하는 기술 - SQL (Structured Query Language) : DB데이터를 관리하는 언어 - HTTP (HpyterText Transfer Protocol) :..