-
(Eng) error) java, MySQL) Exception : Statement.executeQuery() cannot issue statements that do not produce result sets
Eng) java, MySQL ) Exception : Statement.executeQuery() cannot issue statements that do not produce result sets Error message : Statement.executeQuery() cannot issue statements that do not produce result sets When I did my first project using MySQL DB, this error made me stuck for a time. In conclusion, this error is occurred by the incorrect use of java..
2022.03.16
-
개발일지_5) 개발문서 작성
개발 문서 작성에 박차를 가하고 있는 요즘. 한 달에 걸쳐 작성한 코드는 나에게도 온전히 내것이 아니었다. 분석하고 해체하고 체계화해서 다시 조립하고 있다. 다만 이번엔 코드가 아닌 이미지와 글이다. 주석을 읽고 고치고 새로 기입하면서 과거의 자신과 대화 하는 기분이다. 꽤 신선하고 재밌다. 타인에게 설명하기 위해 자료를 만들다 보니 단점이 많이 보이더라. 꽤 많은 코드를 고쳐썼다. 가장 많이 수정한 부분은 아무..
2022.03.13
-
파이썬) 객체 리스트의 다중 정렬 (백준 10825)
students.sort(key=lambda x: (-x.native_lang, x.english, -x.math, x.name)) 객체 리스트 정렬 방법에 관한 정보만을 바로 보려면 아래 3번 문단으로 클래스로 찍어낸 객체들을 배열한 리스트에서, 객체의 여러 속성을 기준 삼아 정렬하는 알고리즘을 익히기 좋은 문제가 있어 정리. (물론 문제만 해결하자면 객체를 만들지 않고 2차원 배열을 이용하는 방법이 더 간단하다) https://www.acmicpc.net/problem/10825 10825번:..
2022.03.27
-
개발일지_2) 보안 그리고 깃허브
깃허브에 공개되는 코드는 모두가 열람할 수 있다는 점을 잊지 말자. 1. 주말 느지막이 침대에서 일어나다가 문득, "깃허브에 올라간 나의 코드에 포함된 특정 정보를 누군가 악의를 가지고 사용한다면 어떠한 영향이 발생하는가" 에 대한 상상을 해봤다가 뒷덜미가 차가워지면서 침대 밖으로 뛰쳐나왔다. 트위터에 이야기를 살짝 올려봤는데 역시나 현업에 계신 선생님 중 한 분이 현재 내 상황의 위험성에 대하여 조언을 해주..
2022.03.05
-
error) 자바, MySQL) 예외 : Statement.executeQuery() cannot issue statements that do not produce result sets
Statement.executeQuery() cannot issue statements that do not produce result sets 프로젝트 진행중에 발생한 SQL Exception 이다. 원인을 빠르게 찾지 못해 고생했다. SELECT 쿼리: .executeQuery() 사용 그외 (INSERT, DELECT 등)의 쿼리: .execute() 혹은 .executeUpdate() 사용 위 두개의 메서드를 혼동하여 사용할 경우 에러가 발생한다. .executeQuery() - ResultSet 을 리턴 .executeUpdate() - int 값 리턴 - 영향..
2022.02.19
-
도커_02) 도커파일을 이용한 이미지 작성 - nodeJS 서버 컨테이너
관련 링크 도커_01) 도커 기본 명령어 1. nodeJS 서버 생성 // 프로젝트 디렉토리 만들고 이동 $ mkdir my_dockerfile_sever $ cd my_dockerfile_sever // nodeJS 초기화 설정 -> package.json 파일 생성 // 연습코드이므로 생성된 대화상자 메세지는 모두 엔터로 넘겨도 무방 $ npm init // nodeJS 서버 구동을 위한 express 설치 (node_modules 폴더가 생성됨) // 옵션 --save : package.json 파일에 dependencies 정보 추가 $..
2022.03.20
-
카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집
1. 제가 사용하고 있는 카라비너 Complex modifications 세팅 json 파일입니다. 코드 깃허브 링크: https://github.com/dpcalfola/Karabiner_custom_json/blob/main/fola_custom.json 2. Caps Lock 버튼 조합으로 단축키를 만들어 사용하고 있습니다. caps + hjkl : 방향키 caps + space : 한영전환 (기본 한영전환을 ctrl + space로 맞춰주셔야 동작합니다) caps + n : backspace caps + m : delete 3. 사용 방법 첨부된 json..
2022.04.24
-
개발일지_9) 백준 골드 달성. 자료구조가 너무 재밌어서 큰일😆😆
1. 백준 티어 골드를 달성했다. 처음으로 문제 푼 날 기준으로는 약 5개월. 코딩을 처음 해본 날 그러니까, html 문서에 hello world를 찍은 날 기준으로는 약 8개월. 배경지식 없이 시작한 것 치고는 꽤 빠른 편이지 않을까..? 2. 요즘 자료구조가 너무 재밌다. 자료구조란 말을 처음 들은 순간을 기억한다. java에서 원시 타입과 참조 타입의 차이에 대한 수업 내용이었다. 여기서 처음으로 스택과 힙이라는 용어를 배웠다...
2022.04.12
-
선형대수_0B) 파이썬 matplotlib 로 그래프 그리기
1. 코드 import matplotlib.pyplot as plt import numpy as np # Labeling plt.xlabel('x axis') plt.ylabel('y axis') # Const x_min_range = -3 x_max_range = 3 y_min_range = -2 y_max_range = 4 gap = 0.5 # Graph range # [ x-min, x-max, y-min, y-max ] graph_range = [x_min_range, x_max_range, y_min_range, y_max_range] plt.axis(graph_range) # Add grid plt.grid(color='gray', alpha=.5, linestyle="--") # 격..
2022.04.14
-
Django poj.c D0 ) 금요일, 1주차 중간 발표 (+ 감상) - 4일차
Code D 발표 0번 글, 프로젝트 4일차 1. 매주 금요일 국비 과정 학원에서 프로젝트 중간발표를 한다. 중간 프로젝트에 비하면 수강생 참여율이 저조한 편. 오늘 발표는 나를 포함하여 두 팀 뿐이었다. 다른 한 팀은 4인이 뭉쳤다. 나는 주 언어를 학원 커리큘럼과 달리하기 때문에 개인 프로젝트가 되었다. 2. 학원의 커리큘럼은 자바 중심이다. 파이썬과 관련된 교육은 하나도 없다. 한 번뿐인 국비교육 기회를 살리지 못해 아..
2022.04.22
-
파이썬PS) 백준 14729 칠무해 - 최대힙 사용
파이썬PS) 백준 14729 칠무해 - 최대힙 사용 문제 링크 : https://www.acmicpc.net/problem/14729 제출 코드: https://www.acmicpc.net/source/45496454 14729번: 칠무해 조(Joe)는 중앙대학교 교수이고, 논리회로 설계 과목을 담당하고 있다. 그는 수업을 하면서 7명의 학생을 제외한 나머지 학생들에게 좋은 학점을 주겠다고 약속을 하였다. Joe 교수님을 돕기 위해 www.acmicpc.net 0. 파이썬으로 풀 경우 단순하게 모..
2022.07.04
-
프로젝트 기록
Howdimt - 주류 정보 공유 웹 애플리케이션 바로가기: http://www.howdimt.xyz/ Github: https://github.com/dpcalfola/cocktail_how_did_i_make_this Web Framework: Python Django DB: postgreSQL Web Server: Nginx Deploy: 개인 NAS의 Docker 1. 프로젝트 진행 과정 시간 순으로 보기 더보기 2022.04.18 - Django poj.c A0 ) 진행과정 기록에 관하여 - 0일차 2022.04.19 - Django poj.c C0 ) DB 선택 - 1일차 2022.04.20 - D..
2022.07.03
-
Hammerspoon, lua ) 해머스푼 코딩
0. 해머스푼 init.lua 코드의 대다수는 '기계인간' 님의 Hammerspoon 블로그를 참고하여 작성하였습니다. 감사의 마음을 전합니다. '기계인간' 님의 Hammerspoon 블로그 포스트 주소 https://johngrib.github.io/wiki/hammerspoon/ '기계인간' 님의 맥 노하우 트윗 타래 주소 (해머스푼과 관련된 내용 포함) https://twitter.com/John_Grib/status/1534909214304313345?s=20&t=bWycnnvUx_Y-Nf9RXed6Zg 1. 트위터에서 해머스푼에..
2022.06.29
-
Toy.didIPass 1) 객체지향적 접근 - 추상화/캡슐화
토이 프로젝트 > Toy poj.pf 1) 자격증 과락, 합격, 불합격 계산 프로그램 (Ver. 1.0) 0. 코드 링크: https://github.com/dpcalfola/toy_projects/tree/main/did_i_pass 1. 객체지향 프로그래밍의 특징 객체지향 프로그래밍의 특징에는 캡슐화, 상속, 추상화, 다형성 4가지가 있다. 이번 토이 프로젝트는 상속과 다형성을 적용시킬 만큼 복잡하지 않아서 제외하고, 추상화와 캡슐화 관점에서 'Subject' 클래스를 해석해 보았다..
2022.06.19
-
Toy.didIPass 0) 자격증 과락, 합격, 불합격 계산 프로그램
토이 프로젝트 > Toy poj.pf 0) 자격증 과락, 합격, 불합격 계산 프로그램 (Ver. 1.0) 0. 코드 링크: https://github.com/dpcalfola/toy_projects/tree/main/did_i_pass 대화형 텍스트 방식의 프로그램. 문제의 개수와 맞은 문제 수 또는 틀린 문제 수를 입력하면 백분율 환산 점수, 과락 여부, 합격여부를 출력한다. mode1 : 총 문제수와 맞은(또는 틀린) 문제 개수를 입력받아 합격 여부 출력 mode2 : 세부 과목의 문제수와 맞..
2022.06.19
-
개발일지_10) 국비 수료 후 근황
12월 27일 ~ 5월 25일 java 국비 과정 수료. 6월 말 까지는 개발과 관련 없는 개인 일정이 잡혀 있어서 적극적인 취업 준비나 구직 활동이 불가능. 알고리즘 문제풀이 하루 한문제 이상, 자격증 시험 위주로 공부. 5월 28일 SQLD 6월 11일 리눅스 마스터 2급 2차 6월 18일 정보처리 기능사 시험 하나 당 준비기간 5일 이내로 벼락 치는 중.
2022.06.08
-
Django poj.c E5) CSRF token에 대하여, 토큰 검증 문제 해결 - 프로젝트 마감 추가글 2번
Code E - Server 5번 글, 6월 1일 (수) 자격증 시험 준비로 미뤄 두었던 프로젝트 34~35일 차 (5월 21일~22일) 프로젝트 진행 과정 기록 ( 프로젝트 마감 추가글 2번 ) < CSRF 검증 실패(CSRF trust) 문제 해결 > 1. Error 상황 CSRF 토큰을 사용하는 form 태그의 post 요청 시 접근하고 있는 호스트가 신뢰할 수 있는 origins 목록에 없다는 Debug 메시지와 함께 403 forbidden 에러가 발생하였다. 2. CSRF 토큰? Django Fra..
2022.06.01
-
Django poj.c E4) Django / nginx 도커 컨테이너 간 정적 파일 공유 - 프로젝트 마감 추가글 1번
Code E - Server 4번 글, 5월 31일 (화) 자격증 시험 준비로 미뤄 두었던 프로젝트 34~35일 차 (5월 21일~22일) 프로젝트 진행 과정 기록 ( 프로젝트 마감 추가글 1번 ) 0. 컨테이너 간 정적 파일(static / media files) 공유 과정 niginx 웹 서버가 정적 파일 요청을 처리하기 위해서는 Django 컨테이너의 정적 파일을 nginx 서버와 동기화하는 작업이 필요하다 1. Django 컨테이너 세팅 Django 컨테이너에서 정적 파일을 한..
2022.05.31
-
error, 파이참버그) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그
error, 파이참, PyCharm) ValueError: invalid literal for int() with base 10: '' / 파이참 인풋 버그 0. 요약 : PyCharm 2022.1.1 의 알려진 버그 PY-54238 - 콘솔에서 인풋 값을 입력받을 때 두 번째 인풋이 강제로 empty string로 변환되는 현상 해결방법: Run > Run/Debug Configurations > Execution > Emulate terminal in output console > 체크박스 체크 (2022/06/02 추가 내용) 정식 릴리즈된 PyCharm 2022.1.2 업데..
2022.05.30
-
Django poj.c F1) 프로젝트 마무리, 해킹 공격, 프로젝트 기록 보류 - 36일차
Code F 기타 1번 글, 프로젝트 36일 차 5월 23일 (월) 0. 5월 28일 토요일 sqld 시험 준비 관계로 프로젝트와 관련된 모든 기록이 일시 중지. 1. 가까스로 프로젝트를 마무리했다. 모든 도커 컨테이너가 유기적으로 돌아간다. 또 구입한 도메인을 ngnix 컨테이너로 연결하였다. 간단하게 시연 방식으로 학원에서 발표. 2. 그러나 일요일 저녁에 연결한 도메인 주소를 어떻게 알았는지 12시간도 넘지 않은 시점에 끊임없이 해킹..
2022.05.25
-
Django poj.c E3) 프로젝트 서버 진척 내역 - 33일차
Code E - Server 3번 글, 프로젝트 33일 차 (금) 33일 차 프로젝트 서버 진척 내역 1. 파이썬 패키지 pip freeze > requirements.txt pip install -r requirements.txt 사용된 python 패키지 목록을 만들고 그 목록을 이용하여 서버 컨테이너에 패키지를 설치 2. gunicorn 설치 gunicorn은 웹 서버와 장고 애플리케이션을 연결해주는 인터페이스이며, 웹 페이지가 요청하는 동적 로직을 장고로부터 전달한다. 서버 컨테이너 내..
2022.05.21
-
Django poj.c E2) 실패한 모든 시도의 원인은 방화벽이었다 - 32일차
Code E - Server 2번 글, 프로젝트 32일차 (목) 0. 해결 방법 Docker 가 사용하는 172번으로 시작하는 IP의 nas 방화벽 개방 (default bridge - 172.17.0.1~ , custom bridge - 172.18.0.1~ ) 1. 기존에 시도했던 Docker in docker 가 작동하지 않았던 이유도, 우분투 컨테이너에 정상적으로 설치했던 도커 엔진이 작동하지 않았던 이유도, 도커 브릿지에 묶여 있는 컨테이너 사이에 통신이 불가능했던 이유도, 그 외에 수없이..
2022.05.21
-
Django poj.c E1) Docker In Docker 는 포기 - 31일차
Code E - Server 1번 글, 프로젝트 31일차 (수) 1. nas의 터미널과 종일 씨름했다. docker in docker는 포기하는 것으로 결정 docker hub의 dind(docker in docker) 이미지의 여러 태그들을 시도해 보았으나 모두 컨테이너 밖으로 인터넷 연결조차 되지 않아서 실패했다. 지푸라기 잡는 심정으로 Ubuntu 이미지를 unminimize 하고 각종 업데이트와 유틸들을 모두 설치한 후 컨테이너 위에 리눅스 도커 엔진을 올려 보려 시도했..
2022.05.19
-
Django poj.c E0) AWS 대신 NAS - 30일차
Code E - Server 0번 글, 프로젝트 30일차 (화) 1. 지금부터는 코딩보다는 서버 호스팅에 도전하는 시간. 리눅스, 도커, 네트워크 지식의 부족함을 여실히 느끼고 있다. 검색하고 배워서 적용하고 익히자 ⭐️ 2. AWS와 같은 클라우드 인스턴스는 비용 발생 위험이 있고 나는 Docker 컨테이너를 띄울 수 있는 시놀로지 NAS를 가지고 있기 때문에 웹 개발을 하게 된다면 내 서버에 직접 띄울 생각이었다. 웹 서버는 아니어도 지..
2022.05.18
-
Django poj.c B17) 이미지 파일 압축/삭제 - 29일차
Code B Django 17번 글, 프로젝트 29일차 (월) 2022.05.14 - [프로젝트/Django - How Dimt?] - Django poj.c A3) 타겟 유저와 유저 유인 요소, 실 서비스를 위해 필요한 숙제들 - 27일차 1. 실 서비스를 위해 필요한 숙제 2번 - 이미지 압축/삭제를 해결 2. 이미지 삭제 객체를 'UPDATE' 할 때 이미지 필드가 교체되면 기존의 파일을 삭제한다. 아주 간단하게 해결되었다. django-cleanup라는 pip 패키지가 있다. 이 패키지는 F..
2022.05.17
-
Django poj.c B16) Security logic - 403 forbidden - 28일차
Code B Django 16번 글, 프로젝트 28일차 (일) 2022.05.14 - [프로젝트/Django - How Dimt?] - Django poj.c A3) 타겟 유저와 유저 유인 요소, 실 서비스를 위해 필요한 숙제들 - 27일차 1. 실 서비스를 위해 필요한 숙제 1번 보안 문제를 해결하였다. 2. 프로필과 자유게시판의 객체를 생성/수정/삭제 하기 위해서는 두 가지의 검증 절차를 통과하게 된다 1) 버튼 제어 html 코드의 {% if... %} 문을 이용하여 로그인 유저가..
2022.05.16
-
Django ) 데코레이터를 이용한 유저 검증
관련글 2022.05.16 - [프로젝트/Django - How Dimt?] - Django poj.c B16) Security logic - 403 forbidden - 28일차 views.py 에서 모델 객체 변경을 요청하는 유저의 권한을 체크하는 3가지 코드 1. CBV에서 'GET' 요청과 'POST' 요청을 처리하는 함수를 오버라이드 GET' 또는 'POST' 요청을 처리하는 함수가 콜 되었을 때 - 로그인이 되어있지 않거나 - 객체의 작성자와 request에 담겨있는 로그인 user가 같지 않을 경우 403..
2022.05.16
-
Django poj.c A3) 타겟 유저와 유저 유인 요소, 실 서비스를 위해 필요한 숙제들 - 27일차
Code A 기획 3번 글, 프로젝트 27일차 (토) 관련글 2022.05.16 - [프로젝트/Django - How Dimt?] - Django poj.c B16) Security logic - 403 forbidden - 28일차 2022.05.17 - [프로젝트/Django - How Dimt?] - Django poj.c B17) 이미지 파일 압축/삭제 - 29일차 0. 컨디션 난조로 휴식을 하고 있다. 대신 프로젝트가 앞으로 나아가야 할 방향에 대해 조금 고민. 1. 프로젝트가 어느새 4주 차 막바지에 다다르고 있다. 당초 계..
2022.05.14
-
Django poj.c B15) 자유게시판 CRUD - 25일차
Code B Django 15번 글, 프로젝트 25일차 (목) 1. CBV !!! 드디어 CBV를 제대로 활용했다 CreateView, DetailView(==Read 역할), UpdateView, DeleteView -> CRUD 모두 Class Based View로 구현하는데 성공. 이제야 Django의 CRUD 가 어떻게 돌아가는지 큰 그림이 조금 보인다. 2. 아쉬운 점 (1) CBV를 자유자재로 사용하진 못하고 있는 게, 게시물 삭제 이후로 Delete 성공 메시지를 출력하고 싶었는데 잘 되지 않았다. FBV..
2022.05.14
-
Django poj.c B14) 페이지네이션 - 24일차
Code B Django 14번 글, 프로젝트 24일차 (수) 1. 페이지네이션 적용. CBV로 손대는 방법이 너무 막막해서 게시판 페이지 자체를 FBV로 다시 설계. CBV로 내가 원하는 로직을 구현하기 위한 세세한 CBV 사용법을 찾아볼 시간에 FBV 안에서 기본 파이썬 코드 방식으로 하나씩 구현하는 쪽이 압도적으로 효율적인 상황이다. CBV를 잘 사용할 수 있는 날이 오기는 할까. 2. 페이지네이션 예제 코드를 참고하다 aria로 시작하는 ht..
2022.05.12
-
Django poj.c B13) 게시판 뼈대, 모델 클래스 내부에 함수 넣기 - 23일차
Code B Django 13번 글, 프로젝트 23일차 (화) 1. 자유게시판 뼈대 작성 Post라는 이름의 글 모델과 Comment라는 이름의 댓글 모델 작성 및 마이그레이션 300개의 더미 데이터 생성 Class Based View로 작성했는데, 페이지네이션이 어려울 것 같아서 Function Based View로 다시 작성해야 하나 고민 중 정말 CBV 한 번을 쓰기가 힘드네. 2. 작성자 로직 프로필 업데이트 기능을 통해 nickname을 설정했다면 nickname이 표시되고..
2022.05.11
-
Django poj.c B12) 에러 원인 해결, 프로필 업데이트 완성 - 22일차
Code B Django 12번 글, 프로젝트 22일차 (월) 1. 정말, 너무, 아아아, 며칠간 고생한 게 허무해지는 순간이었다. if request.method == 'POST' 라고 적어야 할 코드를 if request == 'POST 이렇게 작성했다. 왜 조금 더 일찍 발견하지 못했을까 위의 문제점을 발견 한 이후로는 모르는 부분을 하나씩 찾아가며 기능을 완성할 수 있었다. 2. Django 의 ORM UPDATE 코드 예제는 절대다수가 {{ form.as_p }} 를 사용했다. 저 코드..
2022.05.09
-
Django poj.c B11) 아직도 프로필 업데이트 페이지 - 20, 21일차
Code B Django 11번 글, 프로젝트 20, 21일차 (토, 일) 1. 의사 선생님과 연인에게 일 중독 경고를 받고 있다. 그래서 주말엔 되도록 쉬려고 노력하고 있다. 2. 쉬려고 노력은 하고 있으나,,,, 프로젝트 3주가 지나갔는데 예상보다 결과물이 너무 빈약해서 조바심이 난다. 1차 프로젝트가 끝났을 때는 뭐든지 다 할 수 있을 것 같은 자신감이 있었는데 3. 며칠째 프로필 업데이트 기능을 구현하지 못하고 있어 고생 중이다. 동..
2022.05.08
-
Django poj.c D1 ) 금요일, 3주차 중간 발표, ORM - 19일차
Code D 발표 1번 글, 프로젝트 19일차 1. 3주차 중간발표를 했다. 내 프로젝트와 관련한 이야기는 짧게 하고 ORM 에 대해 소개하는 내용을 중점적으로 담았다. 새벽까지 자료 만드느라 조금 피곤했지만 만족. 2. 발표 자료를 첨부
2022.05.06
-
Django poj.c B10) get_or_create !! - 18일차
Code B Django 10번 글, 프로젝트 18일차 (목) get_or_create() get_or_create(defaults=None, **kwargs) A convenience method for looking up an object with the given kwargs (may be empty if your model has defaults for all fields), creating one if necessary. Returns a tuple of (object, created), where object is the retrieved or created object and created is a boolean specifying whether a new o..
2022.05.06
-
error, 도커) Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist 해결방법
error, 도커) Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist 해결방법 1줄 요약 : centos:centos7 이미지 사용 요약: CentOS 8 의 지원이 종료되었기 때문이다. End Of Life가 남아있는 다른 버전을 사용하면 해결된다. CentOS 7 의 지원기간은 2024년 6월까지이며 CentOS Stream 9 가 최신 CentOS 버전이다. (신형 CentOS 는 뒤에 'Stream' 태그가 붙..
2022.05.04
-
Django poj.c F1) 리눅스마스터 자격증 시험준비 - 16, 17일차
Code F 기타 1번 글, 프로젝트 16, 17일차 (화, 수) 1. 리눅스 마스터 2급 1차 시험 합격. 양일간 시험 준비하느라 프로젝트 진행을 못했다. 60점 이상 합격 커트라인에서 환산 94점이면 시험공부에 너무 힘을 줘버렸나;;; 2. 5월 25일 프로젝트 마감 5월 28일 sqld 시험 6월 11일 리눅스마스터 2차 시험 일정 너무 과격한거 아닌가 싶지만, 나는 욕심이 많은 사람이라서.
2022.05.04
-
Django poj.c B9) 프로필 카드 레이아웃, Class Based View - 15일차
Code B Django 9번 글, 프로젝트 15일차 (월) 1. 컨셉은 트위터 프로필 디자인을 참고했다. 하지만 디자인 완성하는데 너무 많은 시간을 쏟았다. 프런트엔드나 풀스택이 아닌 백엔드를 지향하는 처지에 불필요하게 너무 많은 시간을 허비하지 않도록 경계해야겠다. 그래도 꽤 마음에 든다. 2. 완성된 레이아웃이 나오기까지 정말 무수한 시행착오가 있었다. 부트스트랩의 css와 내가 작성한 css 속성의 우선순위가 어떻게 되는..
2022.05.03
-
Django poj.c B8) Eng) Signup !! Eventually !! - 14th day
Code B Django 8th article, 14th day of the project (Sunday) 1. Development progress now. I completed the core structure of the Signup page. I need the Django User Model cause of security issues - for example, password encryption or password validation. But it was not easy to make code satisfying me with the User Model which Django already made. Anyway, I did it eventually. 2. The first time, I..
2022.05.01
-
Django poj.c F0) 구직상담, 휴식, Refresh - 12, 13일차
Code F 기타 0번 글, 프로젝트 12, 13일차 (금, 토) 1. 금요일: 학원 구직상담 다녀옴 발표는 한 주 건너뛰기로 결정 토요일: 전일 휴식 2. 약간 지쳐있었던 것 같다. 집중도 안되고 힘든 기분이 심하게 들어서 푹 쉬기로 했다. 매일 커밋, 백준 문제 연속 기록, 매일 블로그에 프로젝트 진행상황 남기기 등등의 기록이 깨졌다. 오히려 기록이 깨지니까 마음이 좀 편안. 주객이 전도되지 않도록 조심해야지. 3. 원래는 일요일까..
2022.05.01
-
Django poj.c B7) Create !! / forms를 이용한 유효성 검사- 11일차
Code B Django 7번 글, 프로젝트 10일차 (목) 1. 현재 개발 현황 주류 가격 정보 공유 테이블 완성 페이지가 열릴 시 레코드 전체를 DB에서 가지고와 테이블 형태로 보여줌 우상단 '정보 등록하기' 버튼 누를 시 form 태그를 포함하고 있는 입력 테이블이 애니메이션과 함께 생성 유효성 검사를 통과하면 DB에 저장하고 저장한 레코드를 포함한 정보 테이블을 다시 출력 (redirect) 유효성 검사를 통과하지 못하면 기존 입력 정..
2022.04.29
-
Django poj.c B6) error) blank input ValueError 해결 - 10일차
Code B Django 6번 글, 프로젝트 10일차 (수) # 발생한 문제와 관련한 이전 글 링크 2022.04.26 - [프로젝트/Django - How Dimt?] - Django poj.c B5 ) 주류가격정보 테이블 구현 / 현재 봉착한 문제 - 9일차 1. html의 form태그의 POST방식으로 레코드를 생성하는 코드에서 blank=True, null=True로 지정했던 field에 input value 가 비어 있는 상태(blank)로 summit 했을 때 원하지 않는 ValueError 가 발생했다. blank=True..
2022.04.27
-
Django poj.c B5 ) 주류가격정보 테이블 구현 / 현재 봉착한 문제 - 9일차
Code B Django 5번 글, 프로젝트 9일차 (화) # 문제의 원인을 정확히 이해하고 해결했다. 2022.04.27 - [프로젝트/Django - How Dimt?] - Django poj.c B6) error) blank input ValueError 해결 - 10일차 1. 주류가격정보 테이블 구현 (1) 어제 작성하고 마이그레이션 한 주류 가격 정보 모델 django/admin을 통해 몇 개의 데이터를 입력 데이터를 가져오는 과정은 java에서 DAO, VO, SQL 쿼리를 이용한 방법보다 훨씬 간편했다..
2022.04.26
-
Django poj.c C1 ) ORM/ 주류가격정보 model/ 마이그레이션 - 8일차
Code C - Database 1번 글, 프로젝트 8일차 (월) 필드에 blank를 허용할 때 CharField -> blank=True 하나만 나머지 -> blank=True, null=True 두 개가 필요 전자는 유효성 검사에서 사용, 후자는 DB null 허용 여부 (null=True 가 없을 시 객체 생성 과정에서 null 이 들어오면 페이지 에러 발생) 0. 로그인/아웃 기능 개발을 잠시 중단하고 ORM에 조금 더 익숙해지기 위해 조금 더 단순한 기능을 먼저 구현해보기로 했다. 그것..
2022.04.25
-
선형대수_01) 선형방정식을 표현하는 세가지 방법
선형방정식을 표현하는 세 가지 방법 Row picture Column picture Matrix form 1. Row picture 수평 관점 방정식의 나열 하는 방법 방정식을 만족하는 모든 지점을 그래프 위에 표시했을 때 그래프가 만나는 지점(방정식을 동시에 만족하는 점) => 해 \begin{cases} 2x+y &=0\\-x+2y &=-3 \end{cases} 그래프 그래프 코드 https://github.com/dpcalfola/study_matplotlib/blob/main/linear_algebra_study/linear_a..
2022.04.24
-
Django poj.c B4 ) account 기능 구현 중 - 6일차
Code B Django 4번 글, 프로젝트 6일차 (토) Login, Logout 기능 - CBV(Class Based View) Signup 기능 - FBV(Function Based View) UserCreationForm을 상속받은 새로운 Form class를 만들고, 추가 정보(ex - email, 생년월일)를 받는 방법을 시도하는 중. 결국엔 User 모델을 상속 받아서 새 계정 모델을 만들고 마이그레이션 해야 하는 것 아닌가 싶은데 한번 실패한 방법이라. 조금 걱정이다. ORM이 영 익숙해지지가 않네.
2022.04.24
-
카라비너(Karabiner-Elements) caps lock 커스텀 키 매핑, json 편집
1. 제가 사용하고 있는 카라비너 Complex modifications 세팅 json 파일입니다. 코드 깃허브 링크: https://github.com/dpcalfola/Karabiner_custom_json/blob/main/fola_custom.json 2. Caps Lock 버튼 조합으로 단축키를 만들어 사용하고 있습니다. caps + hjkl : 방향키 caps + space : 한영전환 (기본 한영전환을 ctrl + space로 맞춰주셔야 동작합니다) caps + n : backspace caps + m : delete 3. 사용 방법 첨부된 json..
2022.04.24
-
Django poj.c B3 ) 제로베이스!! - 5일차
Code B Django 3번 글, 프로젝트 5일차 zero-base : 타동사 <예산 등을> 백지상태로 되돌려 결정하다, <문제 등을> 출발점으로 되돌아가 결정[검토]하다 1. 구현했던 google 소셜 로그인 커밋을 revert 했다. Django의 User 모델을 제대로 이해하지 못하고 있기 때문에 소셜 로그인 정보와 user 모델 간 상호작용하는 코드를 작성할 수 없었다. 2. revert 이후 User 모델에 대해 공부했다. 유저 커스텀 모델에 관련한 글을 찾았..
2022.04.23
-
git) CLI branch 정리
1. branch 생성 git branch <브랜치이름> 2. branch 목록 확인 git branch 3. checkout (이동) git checkout <브랜치이름> 4. merge (병합) git checkout <베이스 브랜치(main)> git merge <작업 브랜치>
2022.04.22
-
Django poj.c D0 ) 금요일, 1주차 중간 발표 (+ 감상) - 4일차
Code D 발표 0번 글, 프로젝트 4일차 1. 매주 금요일 국비 과정 학원에서 프로젝트 중간발표를 한다. 중간 프로젝트에 비하면 수강생 참여율이 저조한 편. 오늘 발표는 나를 포함하여 두 팀 뿐이었다. 다른 한 팀은 4인이 뭉쳤다. 나는 주 언어를 학원 커리큘럼과 달리하기 때문에 개인 프로젝트가 되었다. 2. 학원의 커리큘럼은 자바 중심이다. 파이썬과 관련된 교육은 하나도 없다. 한 번뿐인 국비교육 기회를 살리지 못해 아..
2022.04.22
-
Django poj.c B2 ) 소셜로그인 구현 중 - 4일차
Code B Django 1번 글, 프로젝트 4일차 django-allauth 라이브러리를 이용한 구글 소셜 로그인 기능을 구현 중이다. 로그인 이후로 페이지에서 세션이 어떻게 동작하는지 더 알아보고 공부해야 다음 단계로 넘어갈 수 있을 것 같다. 언제나처럼. 코딩하는 시간은 잠깐이고, 검색과 공부하는 시간이 대부분.
2022.04.22
-
Django poj.c B1 ) 반응형 지옥 - 3일차
Code B Django 1번 글, 프로젝트 3일차 반응형 레이아웃 잡기가 너무 어려워서 조금 눈물 날 것 같은 기분 css와 부트스트랩만 가지고 하루 종일 씨름했다. 내가 만든 레이아웃에 부트스트랩 예제를 적용하는 방법에서 부트스트랩 예제를 내가 원하는 디자인으로 수정하는 방법으로 기우는 중이다. 가야 할 길이 너무 멀게 느껴지는 요즈음.
2022.04.20
-
Django poj.c A2 ) 칵테일 브레인스토밍 기록 - 3일차
Code A 2번째, 프로젝트 3일차 브레인스토밍 기록 1. 기능 - 보편적인 칵테일 레시피를 제공 - 유저의 오리지날 레시피를 공유 - 그리고 칵테일 사진 포스팅 - 좋아요 기능 2. develpment tasks - 레시피 DB 모델링 -> 4순위 - 계정 생성/관리 -> 1순위 - 프로필 페이지 -> 3순위 - 사진 CRUD -> 2순위 - 레시피 CRUD -> 5순위 3. DB modeling > 레시피 model 작성자(not null) 작성일 (not null) 출처 (null) - ex) 조주기능사..
2022.04.20
-
Django poj.c A1 ) 주제 변경 - 2일차
Code A 1번째, 프로젝트 2일차 1. 기본적으로 내가 사용할 프로그램을 만드려고 했었다. 그래서 선택한 주제가 To-do-list 기반의 SNS 웹 애플리케이션이었는데, 아무리 생각해도 아이디어가 너무 빈곤했다. What I Did, 줄여서 WIDid. 나름 잘 지은 이름이라고 생각했는데. 다음에 토이 프로젝트 수준에서 만드는 것으로 2. 새로 정한 주제는 칵테일.
2022.04.20
-
Django poj.c B0 ) Bootstrap5 설치 및 base.html 작성 - 2일차
Code B Django 0번 글, 프로젝트 2일 차 npm을 이용한 부트스트랩 로컬 설치 구글 폰트 적용 hade / header / base / footer - html 파일 분리 주제 변경에 대한 필요성 절감!!
2022.04.20
-
Django poj.c C0 ) DB 선택 - 1일차
Code C - Database 0번 글, 프로젝트 1일차 결론 NAS 위에 postgresql docker 컨테이너를 DB로 사용. DB 세팅에도 고민이 많았다. DB 서버를 로컬에 둘지 외부에 둘지 어느 DB를 사용할지 처음에는 docker desktop을 이용하여 로컬에 postgresql 컨테이너를 띄웠다. 예전부터 느껴왔지만 생각보다 docker desktop이 리소스를 많이 잡아먹는다. 순간순간 멈칫하는 컴퓨터를 보고 생각을 접었다. DB 프로그램을 로컬에서 돌리고 싶..
2022.04.19
-
Django poj.c A0 ) 진행과정 기록에 관하여 - 0일차
Code A - 기획 0번 글, 프로젝트 0일차 1. 첫 프로젝트의 아쉬웠던 점 중 하나가 진행과정 기록이 없었다는 점이다. 오늘부터 시작하는 Django 웹 개발 프로젝트는 블로그에 중간과정을 세세하게 기록할 계획. 규칙) - 가능한 매일 기록 - 일과를 시작하면서 하루 전 개발한 내용을 기록 - 기록 자체에 매몰돼지 않도록 짧고 간결하게 - 결과물 외에도 감정, 봉착한 어려움, 앞으로의 계획 등을 포함 - 객체지향적 포스팅을 지향..
2022.04.18
-
선형대수_0A_1) LaTeX 설치 및 환경 구축
이전 글) 2022.04.13 - [하고 싶어서 하는 공부/선형대수] - 선형대수_0A) 수학 수식 기록을 위한 LaTeX 1. LaTeX 코드를 편하게 작성할 수 있는 방법과 환경을 찾았다. 당분간 수식과 그래프를 컴퓨터로 표현하는데 어려움은 없을 것 같다. 꽤 만족스럽다. 아래 순서를 따라가면 쉽게 LaTeX 환경을 구축할 수 있다. 2. 초간단 환경 구축 - 웹 LaTeX 편집기를 이용 tutorialspoint - LaTeX Equation Editor https://www.tutoria..
2022.04.18
-
선형대수_0B) 파이썬 matplotlib 로 그래프 그리기
1. 코드 import matplotlib.pyplot as plt import numpy as np # Labeling plt.xlabel('x axis') plt.ylabel('y axis') # Const x_min_range = -3 x_max_range = 3 y_min_range = -2 y_max_range = 4 gap = 0.5 # Graph range # [ x-min, x-max, y-min, y-max ] graph_range = [x_min_range, x_max_range, y_min_range, y_max_range] plt.axis(graph_range) # Add grid plt.grid(color='gray', alpha=.5, linestyle="--") # 격..
2022.04.14
-
선형대수_0A) 수학 수식 기록을 위한 LaTeX
하고 싶어서 하는 공부 - 선형대수 1. 선형대수를 공부하기로 했다. 일종의 취미 생활이자 지적 욕망을 채우는 수단이고 스트레스 해소가 목적이다. 종이에 펜으로 적고 풀어놓은 기록은 쉽게 잊히기에 디지털 문서로 남기고 블로그에 포스팅하면 좋겠다는 생각을 했다. 2. 첫 번째 장벽 나는 수학 수식을 디지털로 남겨본 경험이 전무했다. 몇 번의 검색으로 LaTeX라는 시스템을 알게 되었다. 논문, 출판 등에서 수식, 그래프,..
2022.04.13
-
파이썬PS) 백준 6603 로또. 백트래킹
https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 < k < 13)이고, 다음 k개 수는 집합 S에 포함되는 수이다. S의 원소는 오름차순으로 www.acmicpc.net 파이썬 PS) 백준 6603 로또. 백트래킹 알고리즘 - dfs를 이용한 백트래킹 1. 코드 1 import sys 2 3 while True: 4 nums = list(map(int, sys.stdin.rea..
2022.04.12
-
개발일지_9) 백준 골드 달성. 자료구조가 너무 재밌어서 큰일😆😆
1. 백준 티어 골드를 달성했다. 처음으로 문제 푼 날 기준으로는 약 5개월. 코딩을 처음 해본 날 그러니까, html 문서에 hello world를 찍은 날 기준으로는 약 8개월. 배경지식 없이 시작한 것 치고는 꽤 빠른 편이지 않을까..? 2. 요즘 자료구조가 너무 재밌다. 자료구조란 말을 처음 들은 순간을 기억한다. java에서 원시 타입과 참조 타입의 차이에 대한 수업 내용이었다. 여기서 처음으로 스택과 힙이라는 용어를 배웠다...
2022.04.12
-
개발일지_8) 빛보다 빨랐던 애드센스 심사. 그리고 대체 텍스트
1. 빛보다 빨랐던 애드센스 심사. 약 18시간 만에 승인. 2. 요즘 블로그 글을 좀 자주 쓰기도 하고. 생각보다 구글을 통한 유입이 되는 것 같아서. 큰 기대 없이 신청했었다. 짧게는 몇 주 길게는 몇 달 걸린다던 심사가 하루도 걸리지 않아서 조금 놀랐다. 포스팅한 글의 주제가 명확한 편이고, 구글링으로 유입되는 트래픽의 퀄리티가 나름 괜찮았기 때문이 아닐까. 삽입하는 모든 이미지에 대체 텍스트를 붙이기도 했고. 3...
2022.04.01
-
git) 기본 브랜치(branch) 이름 바꾸기 (master -> main)
1. 로컬에서 git init 명령어를 이용해 repository를 생성했을 때 기본 브랜치 이름이 main 이 아닌 master로 생성될 수 있다. 현재 github에서 새로 생성하는 repository는 기본 브랜치가 main 이기 때문에 기본 branch를 master 로 생성한 git을 깃허브와 remote 연결할 경우 로컬의 master 가 아닌 main 이 default로 설정되기 때문에 번거롭고 수고스러운 상황이 발생한다. (repository 설정에서 default branch를 교체할..
2022.03.30
-
파이썬PS) 백준 7568 덩치
https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 아이디어: 문제에 큰 힌트가 숨겨져 있다. '만일 자신보다 더 큰 덩치의 사람이 k명이라면 그 사람의 덩치 등수는 k+1이 된다' 사람 한 명씩 전체 리스트..
2022.03.29
-
개발일지_7) Java to Python 그리고 우공이산(愚公移山)
우공이산(愚公移山) - 어리석은 사람이 산을 옮긴다 1. 주력 언어를 자바에서 파이썬으로 옮기기로 했습니다. 2. 공부를 시작하는 시점에서는 정보가 너무 없었고, 국비 교육 과정에 대한 선택의 폭도 없었어요. 자바 개발자 직업훈련 4개월이 조금 안 되는 시점. 과거에는 전혀 알지 못했던 많은 길이 보이기 시작했고 저는 제가 원하는, 스스로가 조금 더 행복해질 수 있는 방향을 찾아 나아가기로 했습니다. 3. 국비 자바 수..
2022.03.28
-
도커_03) 컨테이너와 로컬 사이의 볼륨(폴더, 디렉터리) 공유
도커_03) 컨테이너와 로컬 사이의 볼륨(폴더, 디렉터리) 공유, 연결 도커를 공부하면서 작성한 테스트 메모 내용을 블로그에 한 번 더 정리. 1. 정리 도커 명령어의 -v 옵션 -v [로컬저장소의 절대 경로]:[컨테이너 저장소의 절대 경로] 컨테이너와 로컬 디렉터리를 연결시킨다. 작동 방식은 로컬 디렉터리를 설정한 컨테이너에 마운트 하는 방식 따라서 컨테이너 내부에 디렉터리가 존재하지 않는다면 자동으로 생성되고 컨테이..
2022.03.28
-
error) git) 리모트 레파지토리 끊고 다시 연결하기
// 연결되어 있는 원격 레파지토리 확인 $ git remote -v // 원격 레파지토리와 연결 제거 $ git remote remove origin // 연결이 잘 해제 되었는지 다시 확인 $ git remote -v // 새로운 레파지토리로 깃 연결 $ git remote add origin <깃 주소.git> // 새 레파지토리로 push 할때 발생하는 error 메세지 // // fatal: The current branch main has no upstream branch. // To push the current branch and set the remote as..
2022.03.27
-
파이썬) 객체 리스트의 다중 정렬 (백준 10825)
students.sort(key=lambda x: (-x.native_lang, x.english, -x.math, x.name)) 객체 리스트 정렬 방법에 관한 정보만을 바로 보려면 아래 3번 문단으로 클래스로 찍어낸 객체들을 배열한 리스트에서, 객체의 여러 속성을 기준 삼아 정렬하는 알고리즘을 익히기 좋은 문제가 있어 정리. (물론 문제만 해결하자면 객체를 만들지 않고 2차원 배열을 이용하는 방법이 더 간단하다) https://www.acmicpc.net/problem/10825 10825번:..
2022.03.27
-
HTML, CSS) 블로그 스킨 꾸미기
레이아웃의 큰 틀 대부분은 유튜브의 영상을 따라갔고 이후엔 내 취향을 듬뿍 담아 곳곳에 포인트를 넣었다. 심플함을 유지하면서 전체 그림을 한 번에 볼 수 있도록 오브젝트를 배치했다. 또 포인트 색상 하나를 골라 군데군데 적용하고 식상했던 폰트도 몇 개 수정했다. 1. 요즘 웹 개발을 공부하다 보니 평소 무의식 적으로 사용하던 웹 페이지들이 조금 다르게 보인다. 요건 이렇게 만들었겠구나, 이런 게 있으면 좋겠다. 이..
2022.03.26
-
Spring Boot) get - 기본 작동 원리
Spring Boot 프레임 워크를 이용한 자바 웹 개발 공부를 하면서 필요할 때마다 빠르게 꺼내 볼 목적으로 3가지 방식의 get 기본 작동원리를 정리했다. IDE 내의 txt 파일로 작성한 문서를 옮겨왔고, 텍스트를 그대로 붙이기에는 가독성 문제가 있어 코드 블록으로 포장함. 1. 정적 페이지의 작동원리 웹 브라우저가 get 호출 - localhost:8080/hello-static.html 내장 톰캣 서버가 컨트롤러를 찾음 컨트롤러가 없다면 resources:..
2022.03.23
-
error) 톰캣, 서블릿) 자바 웹 개발시 서블릿 페이지를 찾지 못하는 에러(http 404)
톰캣(Tomcat), 서블릿(Servlet) 자바 웹 개발 시 서블릿 페이지를 찾지 못하는 에러(http 404) 2022년 3월 22일 현 시점 톰캣의 최신 버전인 10 버전(10.0.18)의 버그. 9 버전(9.0.60)으로 변경 시 해결. 8 버전도 문제가 없으리라 예상한다. 인텔리제이 혹은 이클립스를 사용하는 경우 9 버전을 추가로 설치하고 사용하는 IDE에서 실행 환경을 9 버전으로 세팅. 실행 환경 설정이 어렵다면 10 버전 톰캣을 지우고 9 버전으로..
2022.03.22
-
error) 도커, MySQL, m1 mac) docker: no matching manifest for linux/arm64/v8 in the manifest list entries
m1 맥북에서 도커 MySQL official 이미지를 실행할 수 없는 문제 에러 메시지) docker: no matching manifest for linux/arm64/v8 in the manifest list entries 해결 요약: 도커 명령어에 다음의 옵션 추가 --platform linux/amd64 에러 메시지 : arm64 아키텍처(m1 apple silicon의 아키텍처)를 지원하는 이미지가 목록에 없음. 1. 도커 허브의 MySQL 공식 이미지 안내에는 ARM 64 태그가 달려있다. 그럼에도 불구..
2022.03.20
-
도커_02) 도커파일을 이용한 이미지 작성 - nodeJS 서버 컨테이너
관련 링크 도커_01) 도커 기본 명령어 1. nodeJS 서버 생성 // 프로젝트 디렉토리 만들고 이동 $ mkdir my_dockerfile_sever $ cd my_dockerfile_sever // nodeJS 초기화 설정 -> package.json 파일 생성 // 연습코드이므로 생성된 대화상자 메세지는 모두 엔터로 넘겨도 무방 $ npm init // nodeJS 서버 구동을 위한 express 설치 (node_modules 폴더가 생성됨) // 옵션 --save : package.json 파일에 dependencies 정보 추가 $..
2022.03.20
-
개발일지_6) 방향키로 손이 가는 시간이 아깝다ㅋ?
개발일지_6) 방향키로 손이 가는 시간이 아깝다ㅋ? 자바 GUI 프로젝트가 끝나고 웹 개발을 위한 기초 웹 언어(html, css, javascript) 수업을 듣고 있다. 자바 코드를 작성할 때와는 느낌이 많이 다르다. 파일을 자주 왔다 갔다 하고, 또 방향키를 많이 사용한다. 구조를 구현한다기보다는 화면을 그리는 느낌이라 머리보다 손이 많이 바쁘다. 오른쪽으로 겨우 한두칸 움직이기 손이 멀리 있는 방향키까지 다녀와야 했다...
2022.03.19
-
(Eng) error) java, MySQL) Exception : Statement.executeQuery() cannot issue statements that do not produce result sets
Eng) java, MySQL ) Exception : Statement.executeQuery() cannot issue statements that do not produce result sets Error message : Statement.executeQuery() cannot issue statements that do not produce result sets When I did my first project using MySQL DB, this error made me stuck for a time. In conclusion, this error is occurred by the incorrect use of java..
2022.03.16
-
개발일지_5) 개발문서 작성
개발 문서 작성에 박차를 가하고 있는 요즘. 한 달에 걸쳐 작성한 코드는 나에게도 온전히 내것이 아니었다. 분석하고 해체하고 체계화해서 다시 조립하고 있다. 다만 이번엔 코드가 아닌 이미지와 글이다. 주석을 읽고 고치고 새로 기입하면서 과거의 자신과 대화 하는 기분이다. 꽤 신선하고 재밌다. 타인에게 설명하기 위해 자료를 만들다 보니 단점이 많이 보이더라. 꽤 많은 코드를 고쳐썼다. 가장 많이 수정한 부분은 아무..
2022.03.13
-
도커_01) 도커 기본 명령어
그 동안 도커는 도커 데스크탑이나 시놀로지 DSM에서 제공하는 GUI 환경에서만 사용해왔다. 도커를 조금 더 활용하기 위해 명령어를 익히고 사용해보려 한다. 커맨드라인에서 사용하는 명령어가 점점 늘고 있다. 기억이 나지 않을 때 내가 쉽게 찾아보려고 남기는 포스팅. 지속적인 업데이트 예정 1. 도커 엔진 상태 관련 명령어 // 도커 엔진 버전 확인 # docker -v // 도커 엔진에 존재하는 이미지 출력 # docker images // 도..
2022.03.11
-
개발일지_4) 데이터 가공
"아파트 실거래가 조회 프로그램" 프로젝트 마감날이 얼마 남지 않았다. 그 동안 2021년 데이터만으로 작업을 해왔고 실용성을 제고하기 위해 데이터 양을 늘리고 있다. 데이터는 공공데이터 포털에서 배포하는 자료에 기반한다. 국내에서 신고된 모든 아파트 거래 자료를 대상으로 하기 때문에 전체 데이터를 가져와야 하는데 간단치가 않다. 1. 지역 구분이 없는 전체 데이터는 월 단위로만 다운로드가 가능하다. 2. 받은 자료..
2022.03.08
-
개발일지_3) 데이터베이스 백업
프로젝트와 관련된 DB를 외부 서버로 옮긴 이후 보안과 백업에 부쩍 신경쓰고 있다. 데이터베이스 스키마를 스냅샷 찍듯 옮기고 싶었다. 하지만 사용하고 있는 DB툴인 DataGrip을 한참 둘러봤음에도 만족스런 기능을 찾을 수 없었다. 기능이 없을리는 없는데, 어떻게 해야 할까. 현재 사용하고 있는 방법은 다음과 같다. 1. DDL Generator 이용하여 각 테이블을 정의하는 쿼리 생성 2. 생성한 쿼리를 백업용 스키마에서 실행하여..
2022.03.06
-
개발일지_2) 보안 그리고 깃허브
깃허브에 공개되는 코드는 모두가 열람할 수 있다는 점을 잊지 말자. 1. 주말 느지막이 침대에서 일어나다가 문득, "깃허브에 올라간 나의 코드에 포함된 특정 정보를 누군가 악의를 가지고 사용한다면 어떠한 영향이 발생하는가" 에 대한 상상을 해봤다가 뒷덜미가 차가워지면서 침대 밖으로 뛰쳐나왔다. 트위터에 이야기를 살짝 올려봤는데 역시나 현업에 계신 선생님 중 한 분이 현재 내 상황의 위험성에 대하여 조언을 해주..
2022.03.05
-
개발일지_1) 내 자바FX 프로젝트를 실행 가능한 파일로 만들고 싶다
내가 만든 프로젝트를 포트폴리오에 첨부하더라도 면접관이 내 프로그램을 실행시킬 수가 없다는 것이다. "아파트 실거래가 조회 프로그램" 이란 자바 프로젝트를 진행하고 있다. 4주간의 프로젝트이고 오늘이 3주차 마지막 날이다. 다음 주 금요일 마감. 코딩은 어느정도 완성했고, 개발 문서 작성이 남았다. 프로젝트를 일주일 남긴 시점에서 머리속을 떠나지 않는 고민이 있다. 내가 만든 프로젝트를 포트폴리오에 첨부하더라..
2022.03.04
-
NAS_0A_일지1) 토막글 카테고리 생성
시놀로지 나스를 구입하면서 배우고 익힌 서버 활용지식을 차례로 포스팅 하려고 했으나, 최근 프로젝트와 여러가지 기본적인 스케줄이 많아 글을 작성할 시간이 없었다. 시놀로지NAS(일지)라는 새 카테고리를 열었다. 긴 시간을 투자하지 않고 짧은 토막글로 쉽게 기록을 남기기 위함이다. 현재 나스는 제법 서버처럼 일 하고 있다. 기본적인 파일 공유 외에도 맥북 타임머신이 나스 위에서 자동으로 돌아가고 있고 구입한 도메..
2022.03.03
-
NAS_02) 개념 용어 키워드 정리
NAS 서버를 운용하기 시작하면서 새로 배운 용어들, 키워드, 개념이 너무 많았다. 정리되는 대로 계속 추가할 예정. * IP - Internet Protocol - 송신 호스트와 수신 호스트가 패킷 교환 네트워크에서 정보를 주고받는 데 사용하는 규약 - OSI 네트워크 계층에서 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당 - IP 와 IP 주소는 다른 개념 * IP 주소(IP Address = Internet Protoco..
2022.02.27
-
NAS_01) 시놀로지 나스 DS720+ 구입
요약 : 1. 다양한 용도의 서버로 사용하기 위해 시놀로지 DS720+ 구입 (약 57만 원) 2. 미디어 매체를 다루지는 않으므로 저장 장치로는 Seagate IronWolf 4TB 구입(약 15만 원) 3. 앞으로 NAS를 활용한 내용들을 블로그에 기록할 예정 NAS를 가지고 싶다는 생각은 오래전부터 가지고 있었다. 하지만 가격이 만만치 않아서 구입 시점을 가늠하고 있었다. 그리고 어느 모델을 살지도 고민이 많았다. 그래서 내가 NAS를 가지..
2022.02.26
-
python ) 문자열 파싱
파이썬에서 문자열은 list 처럼 substring 문법을 사용할 수 있다. string[index] 처럼 사용 가능하다. string_a = "012345678" result = string_a[1:8:2] # index 1 이상 미만까지 2칸식 증가 # 1357 result_2 = string_a[2:] # index 2 이상 끝까지 # 2345678 result_3 = string_a[:3] # index 3 미만까지 # 012 result_4 = string_a[:-3] # 뒤에서부터 3개 제거하고 전부 # 012345 result_5 = string_a[-3:] # (뒤에서부터 3..
2022.02.20
-
error) 자바, MySQL) 예외 : Statement.executeQuery() cannot issue statements that do not produce result sets
Statement.executeQuery() cannot issue statements that do not produce result sets 프로젝트 진행중에 발생한 SQL Exception 이다. 원인을 빠르게 찾지 못해 고생했다. SELECT 쿼리: .executeQuery() 사용 그외 (INSERT, DELECT 등)의 쿼리: .execute() 혹은 .executeUpdate() 사용 위 두개의 메서드를 혼동하여 사용할 경우 에러가 발생한다. .executeQuery() - ResultSet 을 리턴 .executeUpdate() - int 값 리턴 - 영향..
2022.02.19
-
자바) 백준 4948번: 베르트랑 공준
백준 4948번: 베르트랑 공준 (https://www.acmicpc.net/problem/4948) 소수 문제이다. 자연수 n이 주어졌을 때, n보다 크고, 2n보다 작거나 같은 소수의 개수를 구한다. '에라토스테네스의 체 '를 사용 할 수 있다면 복잡하지 않게 풀 수 있다. 순서) 에라스토테네스 체 작성 -> 체 메서드를 이용하여 2부터 2n 까지의 소수 여부가 기록된 boolean 배열 생성 -> n+1 부터 배열 끝까지 소수를 확인 -> count++조건이 n 보다 커..
2022.02.18
-
swift) 문자의 아스키코드 추출 (백준 18238)
백준 18238 ( https://www.acmicpc.net/problem/9440 ) 문제를 풀며 기록 할 만한 코드가 있어 정리 1. 문자열의 각 문자를 배열에 담기 .map 을 이용 let str: String = "ABCDE" let chaArr: [Character] = str.map { $0 } // String을 Character 타입 배열로 받는다 let strArr: [String] = str.map { String($0) } //String을 String 타입 배열로 받는다 2. 문자의 아스키 코드 추출 .asciiValue 를 이용 let cha: Character..
2022.02.01