반응형
[CS] 의존성 주입(Dependency Injection)
·
Computer Science
의존성 주입(DI)흔히 DI라고 부르는 의존성 주입이란 메인 모듈이 직접 다른 하위 모듈에 대한 의존성을 주기보다는 중간에 의존성 주입자가 이 부분을 가로채 메인 모듈이 간접적으로 의존성을 주입하는 방식을 말한다.여기서 의존성이란 자바에서 뭘 의미하는걸까 ? 의존성A가 B에 의존한다는 건, B가 변하면 A에 영향을 미치는 관계를 뜻하며, A -> B와 같이 표현한다.말로만 보면 이해하기 어려우니 예시 코드로 보자.import java.util.*;class B{ public void go(){ System.out.println("B의 go() 실행"); }}class A{ public void go(){ // B 인스턴스를 생성해 B의 go() 메소드 호출 ..
[VScode] terminal에서 code 명령어 등록
·
정보
안녕하세요, 오늘은 어떤 폴더나 파일을 터미널에서 code 명령어를 사용하여 VScode에서 여는 방법을 소개해보려고 합니다. 🔍 문제 상황어떤 폴더나 파일을 vscode에서 열고싶을 때 우리는 터미널에서 code 명령어를 사용해서 열 수 있습니다.하지만, VScode에 code 명령어가 등록되어 있지 않으면 사용할 수 없으며 아래와 같은 오류가 발생합니다. ⛏️ 해결 방법이제 이걸 해결하기 위해 먼저 vscode를 먼저 열어보겠습니다.열었다면 초기 화면에 모든 명령 표시(Show All Commands)라는 문구와 옆에 있는 단축키 Shift + cmd + P를 눌러줍니다.(윈도우는 다를 수 있음) 기존에 설치를 하지 않았으면 'code' 명령 설치를 해주면 되지만, 설치되어 있는 상황에 되지 않는다..
[Crontab] Crontab에서 Python 스크립트 실행 시 모듈 오류 해결
·
삽질
안녕하세요, 오늘은 Crontab에서 Python 스크립트 실행 시 모듈 오류 해결 방법을 소개해보려고 합니다. 🔍 문제 상황리눅스 서버에서 Crontab을 사용해 Python 스크립트를 주기적으로 실행하려 했습니다.하지만 Crontab에서는 ModuleNotFoundError 오류가 발생했고, 터미널에서 직접 실행할 때는 오류가 발생하지 않았습니다. Crontab 설정처음 설정한 Crontab은 다음과 같았습니다.crontab -e로 설정(nano 에디터)05 13 * * * python3 /path/test.py -t MTBC >> /data/log/cron.log 2>&1 오류 발생Crontab 실행 후 cron.log에서 확인한 오류는 ModuleNotFoundError였습니다.터미널에서 py..
[FTP] FTP 전송 시 파일 끝부분이 잘리는 오류
·
삽질
이번 글에서는 Python에서 ftplib을 사용해 FTP 파일 업로드를 구현할 때, 파일 끝부분이 잘리는 이슈를 겪고 그 원인을 해결한 과정을 정리해보려 합니다. 🔍 문제 현상Python으로 작성한 FTP 업로드 코드에서 동일하게 파일의 마지막 130줄이 누락되는 문제가 반복적으로 발생했습니다.또한, 아래 코드처럼 로컬과 원격 파일 사이즈를 로그로 확인한 결과 사이즈조차 같아 확인하기가 어려웠습니다.# 로컬 파일 크기 확인local_size = os.path.getsize(local_file_path)log_info(f"[정보] 로컬 파일 크기: {local_file_path}, 크기: {local_size} bytes")# 파일 업로드with open(local_file_path, 'rb') as..
[산업안전보건] 안전 LAW드맵_신규채용자교육_서비스업 - 문제 풀이
·
정보
1. 위험성평가 실시 시기로 적절하지 않은 것은?1. 최초평가2. 수시평가3. 확인평가 ✔️4. 정기평가정답 해설: 실시 시기별 위험성평가는 '최초평가, 수시평가, 정기평가'가 있으며, 최초평가 및 정기평가는 전체 작업을 대상으로 실시한다.2. 근로자가 산업재해예방을 위해 준수해야 할 사항이 아닌 것은?1. 작업 후 안전점검 ✔️2. 보호구 착용3. 위험장소 출입금지4. 안전보건교육 수료정답 해설: 작업 전 안전점검과 안전작업수칙을 이행해야 한다.3. 위험성(Risk)은 재해 발생 형태와 재해 중대성의 조합이다.OX ✔️정답 해설: 위험성(Risk)은 재해 발생 가능성과 재해 중대성의 조합(ISO/IEC Guide 51)이다.4. 유해·위험요인(Hazard)은 부상(신체적 상해) 또는 질병(건강장해)을 ..
[SQLD] SQLD 전공자 합격 후기
·
정보
💭 공부하게 된 계기대학교를 졸업하고 백엔드 부트캠프를 하고 있던 중, 팀원이 SQLD 자격증에 대해서 얘기해줘서 관심이 생겼다.그렇게 각종 커뮤니티에서 sqld에 대해서 찾아보니 sqld 자격증 자체가 취업을 하는 데 많은 도움을 주진 않지만, 백엔드 개발자를 꿈꾸는 사람이면 자격증 취득에 중점을 두지 않고 SQL에 대해서 공부하는 식으로 준비하는 건 의미있다는 말이 많았다.또한, sqld 시험이 개정되면서 전부 객관식으로 변경되어서 부담감도 없고, 정보처리기사를 취득하면서 sql에 대해서 공부했으니 한 번 따보자!라는 생각으로 이번 53회 시험에 원서 접수를 하게 되었다. 🗓️ 준비 기간- 시험 일시: 2024. 05. 25 10:00나는 자격증 취득보다 공부가 목표였기 때문에 한 달 전쯤인 4..
[Database Navigator] IntelliJ Community 버전에서 DB 도구 사용하기
·
삽질
🔍 문제 상황IntelliJ IDEA 커뮤니티 버전은 기본적으로 DB 관련 기능을 지원하지 않습니다.그래서 보통 Database Navigator라는 플러그인을 많이 사용하는데요,❗ 그런데 이 플러그인이 검색해도 안 나오고, 설치도 되지 않는 경우가 발생했습니다. ✅ 원인: 호환 버전 문제아래는 Database Navigator 플러그인 페이지에서 확인한 지원 버전입니다. 보시다시피 Database Navigator는 IntelliJ 커뮤니티 에디션의 2020.01 ~ 2024.2.5까지만 지원합니다.제가 설치한 버전은 2024.3.1.1이었고, 이 버전은 플러그인과 호환되지 않아서 설치할 수 없었던 것입니다. 🛠 해결 방법방법은 간단합니다.아래 링크에서 Database Navigator와 호..
반응형