본문 바로가기

전체 글160

2023-10-26-TIL 2023-10-26-TIL 터미널로 빌드하는 방법(맥 기준): ./gradlew build cd build/libs ls -arlth java -jar hello-spring-0.0.1-SNAPSHOT.jar → 서버 배포할 땐 이 jar 파일만 넣어서 실행시키면 서버에서 동작하게 된다. build 파일을 clean하는 방법: ./gradlew clean → build 폴더가 사라진 것을 볼 수 있음 기존 build를 지우고 다시 build하는 방법: ./gradlew clean build 스프링 웹 개발 기초 정적 컨텐츠: 서버가 가진 파일을 그대로 웹 페이지로 뿌리는 것. 즉, 정적 파일이 그대로 사이트로 반환된다. 템플릿 엔진: 내부적인 엔진에 의해 HTML 코드가 동적으로 바뀌는 것. 이를 위해 .. 2023. 10. 27.
2023-10-24-TIL 스프링 부트로 스프링 프로젝트 만들기 start.spring.io Java 버전은 11로, Dependencies에는 Spring Web과 Thymeleaf를 추가한다. Generate 버튼을 누르면, jar 파일을 다운로드 받게 된다. 이 파일의 압축을 푼 다음, IDE에서 build.gradle을 open하면 프로젝트가 로딩된다. 이를 실행하면 다음과 같이 된다. localhost:8080에 접속하면 아래와 같다. IntelliJ의 빌드 속도를 높이려면 Settings → Build, Execution, Deployment → Build Tools → Gradle → Build and run using: IntelliJ IDEA & Run test using: IntelliJ IDEA로 변경한다. 기.. 2023. 10. 24.
CS | Network 개념 정리 네트워크 노드와 링크로 연결된 집단. 이 집단 내에서는 리소스와 데이터들이 공유된다. 노드: 서버, 라우터, 스위치, 핸드폰 등의 네트워크 장치 링크: 이들 노드들을 연결하는 연결매체, 통신수단(와이파이 등) 라우터와 스위치의 차이는? 라우터 외부 통신 수행 → 통신 중계의 역할을 함 IP 주소 기반의 통신 네트워크 계층(3계층)에서 동작 보안 정책은 방화벽 스위치 내부 통신 수행(로컬 네트워크) MAC 주소와 포트 기반의 통신 데이터 링크 계층(2계층)에서 동작 스위칭 테이블을 사용하여 데이터를 전달함 스위칭 테이블이란? 일종의 내부 네트워크 데이터베이스 데이터 프레임을 목적지 포트로 정확히 전달하는 것을 목표로 함 MAC 주소와 포트 주소를 담고있는 테이블 스위칭 테이블은 초기에는 비어있는 상태이다... 2023. 8. 1.
python heapq heapq 모듈은 최소 힙(min heap)을 구현하는 데 사용되며, 최소 힙은 가장 작은 요소가 루트에 위치함을 보장한다. 그러나 다른 요소들 사이의 상대적인 순서는 보장되지 않는다. heapq의 각 원소의 인덱스를 k라고 할 때, k의 자식 원소들은 이진 트리 상의 특정 노드의 자식이 되므로 2k+1, 2k+2의 인덱스를 갖는다. heapq는 부모 노드가 항상 자식 노드보다 그 값이 같거나 작다는 특징을 갖는다. import 방법 import heapq 사용 heapq.heapify heapq.heapify 함수는 기존의 자료구조를 힙으로 변환하는 함수다. 이 함수는 파라미터로 전달된 리스트의 원소들을 재배치하여 힙의 조건을 만족하도록 한다. import heapq print() nums = [-5,.. 2023. 6. 1.