개발잡담/Back-End

매번 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를 ..
유튜브와 같이 온라인 영상 서비스들에서 원하는 영상을 재생하려고 하면, 전부 다운로드 후 재생이 아닌 일부만 조금씩 다운로드 후 재생하고 그 이후에 추가로 다운로드 하는걸 알 수 있습니다. 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 ..
Spring Batch 5 버전을 어떻게 사용하는지 간단한 예시를 통해 알아보려 합니다. 환경 Spring Batch 5.1.0 Spring Boot 3.1.3 Java 17 MairaDB(MySQL) 설치 // Spring Batch implementation 'org.springframework.boot:spring-boot-starter-batch' // spring-batch-core implementation 'org.springframework.batch:spring-batch-core:5.1.0' application.properties 설정 ### spring batch spring.batch.job.enabled=true spring.batch.jdbc.initialize-schema=a..
개인 프로젝트를 진행 하던 중에 백엔드 파트 쪽 기능이 정상작동을 안한다는 것을 깨달았습니다. 로그를 보면 좀 더 쉽게 파악이 가능할텐데 그럼 어떻게 로그를 확인 및 수집할지 고민을 해보았습니다. 1. 어떤 로그를 확인하고 싶은지 결정 모든 과정을 마치 알고리즘 문제 풀때 반례 찾듯이 코드 한줄마다 로그를 수집하고 싶지 않아 기준을 정했습니다. 기능 단위 동작 에러 발생시 시간, 발생 위치, 해당 데이터 2. 로그를 띄우는 방법 1) 개발 할때 로그 확인 위 스크린 샷 처럼 IDE에서 Log를 찍고 그 결과를 보면 가능합니다. 하지만 이는 서비스를 배포하면 로그를 확인하는데 매우 제한적입니다. 장점 : 개발 단계에서 로그를 쉽게 설정할 수 있다. 단점 : 사실상 개발 할때만 확인이 가능하다. 2) 로그 ..
Spring Boot를 이용해서 개발을 하다가 문득 궁금증이 생겼습니다. Spring Boot는 여러 개의 요청을 어떻게 병렬적으로 처리할까? 바로 알아보겠습니다. Spring Boot가 병렬적으로 처리를 하긴 하나? 아래의 코드를 보겠습니다. @RestController() @RequestMapping("/study") public class StudyController { private final Logger log = LoggerFactory.getLogger(this.getClass().getSimpleName()); @GetMapping("/threadPool") public String threadPoolTest(){ try{ log.info("Method start!"); Thread.sle..
Red-Hat
'개발잡담/Back-End' 카테고리의 글 목록