매번 pycharm으로 환경을 클릭으로 만들다가 cmd환경에서는 어떻게 만드는지 한번 알아보고자 합니다. 환경windows 11python : 3.12 (환경변수까지 완료)cmd 1. 가상환경(virtual environment) 만들기원하는 폴더에 cmd 실행python --version 명령어를 통해 버전이 잘 나오면 이후 과정 진행※만약 Python이란 단어가 나오거나 실행이 제대로 안될경우 환경 변수 진행 필요 아래 명령어를 이용하여 venv(virtual environment) 생성python -m venv [원하는 venv폴더 이름]예시python -m venv studyVenv 2. pip을 이용하여 django 설치우선 venv를 활성화 후 해당 venv에 pip을 이용하여 django를 ..
분류 전체보기
문제점이 발견되어 이를 해결함과 동시에 문제의 여러 원인 중 하나인 라이브러리 교체를 하고자 함문제점 및 해결 과정날씨가 습해질 때마다 정전기 때문에 자동으로 스위치가 작동하는 현상 발생스위치 모드를 짧게 누르기, 길게 누르기로 제공하여 사용자가 정전기에 의한 오작동을 방지하는 선택권을 주기로 함기존 인터럽트를 통한 릴레이 제어 방식에 한계가 있어서 변경하고자 함MQTT 라이브러리가 서버와 연결이 끊길 경우 재연결시도에 5초 이상을 소비함으로 오프라인 상태에서 일반적인 루프 방식으로 버튼 제어가 현실적으로 불가능기존 라이브러리(PunSubClient)는 오랬동안 개발 중단 및 문제가 있어 AsyncMQTT라는 라이브러리로 교체하고자 함라이브러리 깃허브다운로드 및 설치 아두이노 IDE 기준으로lib 검색..
TDD는 Test Driven Development의 약자를 의미하며 테스트 주도 개발을 의미합니다. TDD에 대한 오해 매우 유명한 개발 기법으로 다양한 자료가 온라인에 존재하여, TDD에 대해 처음 접하였을때 제 기준으로 잘못 이해한 부분을 위주로 간단하게 설명하겠습니다. 1. 테스트 코드를 이용하면서 개발하면 TDD 를 사용한거다. (△)일부는 맞고 일부는 틀린 내용입니다.정확히는 테스트 코드를 주도로 하여 개발하는 것을 TDD라고 정의합니다.이는 개발하는 과정에서 본인이 테스트에 얼마나 비중을 두고 개발하는가? 라는 질문과는 거리가 먼 정의입니다.그럼 이게 정확히 어떤 의미인지는 아래에서 말씀드리겠습니다. 2. 작동하는 코드를 개발 이후 테스트 코드를 통해 작동하는걸 검증하면서 개발하는 걸 TDD..
"www.example.com" 이란 도메인을 가진 서버를 가지고 있다고 가정을 합시다.만약 "www.example.com" 에는 메인 웹 프로젝트를 배포하고,"www.example.com/log" 라는 도메인에는 로그 확인용 서브 웹 프로젝트를 별도로 배포하고 싶다면아래 방식을 사용하시면 됩니다. 환경NextJS매인 웹 프로젝트 - 포트 번호 : 3000서브 웹 프로젝트 - 포트 번호 : 3001NginxUbuntu(20.04) 원리NextJS : Proxy라는 것을 사용하여 하위경로로 온 요청을 해당 프로젝트로 연결해줍니다.Nginx : UpStream을 통해 해당 경로로 온 요청을 원하는 포트로 연결해줍니다. 설정nginx파일 경로 및 이름 : /etc/nginx/sites-available/..
유튜브와 같이 온라인 영상 서비스들에서 원하는 영상을 재생하려고 하면, 전부 다운로드 후 재생이 아닌 일부만 조금씩 다운로드 후 재생하고 그 이후에 추가로 다운로드 하는걸 알 수 있습니다. Spring Boot에서 영상 파일을 스트리밍 하는 방법을 알아보겠습니다. 환경 Spring Boot 3.1.3 React 18.2.0 React-Player 2.12.0 구조 영상을 가져와서 프론트에 출력하는 구조는 아래와 같습니다. 영상을 재생하기 위해 순서대로 정리해보겠습니다. React에서 영상 데이터 요청 파일 정보(이름, 위치 등)을 Spring Boot에 요청합니다. React-Player를 사용하기 때문에 요청을 url={videoLoader()} 라는 파라미터를 통해 영상을 받아옵니다. Spring B..
RestAPI를 통해 파일을 다운로드 하려면 어떻게 해야할지 알아보겠습니다. 환경 Spring Boot 3.1.3 React 18.2.0 axios 1.4.0 파일 다운로드를 위한 순서 React에서 파일 다운로드 요청 axios를 사용하여 파일 정보를 Spring Boot에 요청합니다. responseType을 blob으로 설정합니다. Spring Boot에서 요청 처리 Controller에서 파일 정보를 받아 Service로 전달합니다. 이후 Service에서 처리된 데이터를 리턴시킵니다. Spring Boot에서 파일 데이터 처리 파일 존재를 확인 후, Resource로 처리하여 리턴합니다. 코드를 통해 확인해 보겠습니다. React import { useEffect, useState } from ..