전체 글
-
2.2.3 REST API || 2.2.4 컨트롤러 레이어Spring/웹 개발 101 2022. 4. 7. 00:10
REST는 'Representational State Transfer' 의 약자로 아키텍쳐 스타일을 뜻합니다. * 아키텍쳐 스타일 : 아키텍쳐 디자인 *아키텍쳐 패턴 : 반복되는 문제 상황을 해결하는 도구 REST 제약조건 클라이언트-서버 상태가 없는 캐시되는 데이터 일관적인 인터페이스 레이어 시스템 코드-온-디맨드 *리소스란 REST API가 리턴할 수 있는 모든 것을 의미합니다. EX ) HTML , JSON, IMAGE HTTP는 get/post/put/delete/options 등과 같은 메서드와 URI를 이용해 서버에 HTTP 요청을 보낼 수 있다. GET /test HTTP/1.1 Host: localhost:8080 Content-Type: application/json Content_Len..
-
백준 1927 - 최소 힙백준 algorithm 2022. 4. 6. 23:16
입력 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0이라면 배열에서 가장 작은 값을 출력하고 그 값을 배열에서 제거하는 경우이다. x는 231보다 작은 자연수 또는 0이고, 음의 정수는 입력으로 주어지지 않는다. 출력 입력에서 0이 주어진 횟수만큼 답을 출력한다. 만약 배열이 비어 있는 경우인데 가장 작은 값을 출력하라고 한 경우에는 0을 출력하면 된다. 예제 입력 1 복사 9 0 12345678 1 2 0 0 0 0 32 예제 출력 1 복사 0 1 2 12345678 0 => 최대힙의 반대로 최소힙문제입니다. => queue 헤더안에 있..
-
2.2.2 모델, 엔티티, DTOSpring/웹 개발 101 2022. 4. 4. 16:20
서비스를 구성하는 클래스에는 일을 하는 클래스, 데이터를 담는 클래스등이 있다. 이러한 클래스들을 기능에 따라 엔티티, 모델, DTO등으로 부른다. 무엇을 위한 클래스인지를 파악하는 것이 중요하다. 모델과 엔티티를 구성하는 클래스를 구성해보았다. 위치 : com.example.demo.model 패키지 이름 : TodoEntity.java package com.example.demo.model; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; @Builder @AllArgsConstructor @Data @NoArgsConstructor public clas..
-
2.2 백엔드 서비스 아키텍쳐Spring/웹 개발 101 2022. 4. 3. 14:50
레이어드 아키텍처 패턴 : 스프링 프로젝트 내부에서 어떻게 코드를 적절히 분리하고 관리할 것인지에 대한 것. REST 아키텍처 스타일 : 클라이언트(브라우저)가 우리 서비스를 이용하려면 어떤 형식으로 요청을 보내고 응답을 받는지에 대한 것. Restful 서비스 : 클라이언트는 몇 개의 정해진 method로 우리 서비스를 이용하며 rest 아키텍처에 따라 설계 및 구현된 서비스를 총칭함. 웹서비스 작동프로세스 컨트롤러가 요청 받음 컨트로러는 서비스에게 요청함 서비스는 퍼시스턴스를 요청함 퍼시스턴스는 요청한 데이터를 반환함 서비스는 데이터를 검토 및 가공한 후 컨트롤러에게 반환함 컨트롤러 또한 데이터를 검토 및 가공한 후 응답을 반환함 => 전통적인 회사의 운영방식과 비슷 => 부장이 요청받으면 말단 사원..
-
백준 11279 최대힙 C++백준 algorithm 2022. 4. 2. 23:58
예제 입력 1 복사 13 0 1 2 0 0 3 2 1 0 0 0 0 0 예제 출력 1 복사 0 2 1 3 2 1 0 0 => 최대힙을 구현할 수 있는지에 대한 문제였습니ㅏㄷ. => C++에는 queue 헤더 안에 priority_queue 자료형을 사용 할 수 있습니다. => 해당 자료형을 이용해서 주어진 조건에 따라 출력문을 출력하면 되는 문제였습니다. => 시간초과가 걸릴 경우, cin.tie(0); ios_base::sync_with_stdio(false); 해당 구문을 입력해줄 경우 시간초과에 걸리지 않게 됩니다. #include #include #include #include #include #include #include #include #include using namespace std; i..
-
백준 2606 바이러스 C++백준 algorithm 2022. 3. 31. 01:16
입력 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어진다. 이어서 그 수만큼 한 줄에 한 쌍씩 네트워크 상에서 직접 연결되어 있는 컴퓨터의 번호 쌍이 주어진다. 출력 1번 컴퓨터가 웜 바이러스에 걸렸을 때, 1번 컴퓨터를 통해 웜 바이러스에 걸리게 되는 컴퓨터의 수를 첫째 줄에 출력한다. 예제 입력 1 복사 7 6 1 2 2 3 1 5 5 2 5 6 4 7 예제 출력 1 복사 4 => DFS 문제입니다. => 주어진 정점과 간선들은 배열을 통해 구현해두어야합니다. => arr[MAX][MAX] : 간선을 표현한 배열 => 각 정점이 연결되어 있을 경우 '1'로 표현..