목록LANGUAGE (16)
밤톨코딩
📌 이슈 사항주석은 코드의 가독성을 높이고, 특정 코드의 목적을 설명하는 데 사용된다.이번 인수인계 받은 파이썬 프로젝트(FastAPI)에서 소스코드에 대한 설명이 전혀 작성되어 있지 않아서,이번에 주석을 달면서 기능 개선을 하려고 한다.(주석 하나 안 달아 놓은 건 무슨 심보인가? 🤯) 파이썬 주석에 대해서 찾아보니 클래스(class), 함수(function), 메서드(method) 등에 주석을 다는 방법은 여러 가지가 있다는 것을 알게 되었다. 1️⃣ 한 줄 주석한 줄 주석은 # 기호를 사용하여 작성된다.# 이것은 한 줄 주석입니다.x = 10 # 변수 x에 10을 할당 2️⃣ 여러 줄 주석여러 줄 주석은 일반적으로 큰따옴표(""" """") 또는 작은따옴표(''' ''')를 사용하여 ..
📌 이슈 사항테스트 환경에서 운영 서버의 검색엔진과 연결하여 실행이 필요하게 되었다.테스트 환경의. env.production에 운영 서버의 검색엔진의 정보를 입력하고 빌드를 한 후에 접속을 하였는데, 개발환경의 검색엔진에 접속하게 되었다.즉, 빌드하는 과정에서 .env.production이 정상적으로 적용되지 않았던 것이다. 🕹️ 해결 사항NODE_ENV가 .env.production 파일 대신. env.development를 읽은 것은 정상적으로 설정이 되어 있지 않았기 때문이었다.빌드를 할 때 production을 명시적으로 설정하여 빌드하였더니, 정상적으로 .env.production을 읽게 되었다. # 빌드NODE_ENV=production yarn build
🎯 이슈 사항시스템을 유지보수 하다 보면 디스크 용량이 부족할 때가 발생해서 쓸모가 없는 파일들을 정리할 필요가 있다.그런데 이 파일들이 현재 사용 중인지 아니면 현재 운영 중에 사용 중인지 조금 헷갈릴 때가 있다.예를 들면 현재 MairaDB를 운영에서 사용하고 있는데, 정리해야 할 디렉터리에 mariadb라는 디렉터리가 여러 존재하는 경우가 발생하였다. 🙄사용 중이지 않은 데이터는 압축하여 임시 보관하려고 하는데, 어느 것이 운영 데이터인지 확인 필요하게 되었다. 📜 설정 파일 확인MariaDB는 기본적으로 데이터 디렉터리를 설정파일에서 정의하고 있다.리눅스 환경에서는 /etc/my.cnf 또는 /etc/mysql/my.cnf에 위치하고 있다.# 1. 설정 파일 열기vi my.cnf# 2..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bjHLV6/btrSsnPdeF8/nK8yaOGjYAwAa4kZI7KDJ1/img.png)
어떠한 데이터에는 절대 변해서는 안 되는 경우가 있고, 한글이나 특수 문자들이 사용되서는 안 되는 경우가 있다. 가끔 엑셀(Excel)이나 CSV 파일로 읽어 들이는 과정에서 의도하지 않은 문자나 공백이 들어가는 경우가 생기는데, 이때 불필요한 문자는 지울 수 있도록 replaceAll 함수를 사용한다. replaceAll( String regex, String replacement ) 사용 예제 사용 예제에서는 회원번호는 영문 대소문자와 숫자만 들어가야하는 데이터라고 가정한다. 하지만 데이터를 읽어 들어오는 과정에서 다른 문자들이 포함되었을 때 이것을 제거하는 코드를 작성하였다. replaceAll에 들어가는 정규식은 a부터 z까지, A부터 Z까지, 0부터 9까지 아닌 문자가 있을 경우 "" 즉 아무것..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/kV0NG/btrShBmppGQ/2DNKNncmiUCvFLEGMOaAU1/img.png)
프로젝트에서 JS 파일을 수정 후에 적용하였는데, 웹 브라우저(크롬)에서 적용이 안 되어서 실행이 안 되고 에러만 발생하는 경우가 있다. 기존의 JS 파일의 쿠키가 남아 있어 변경된 JS 파일을 읽어오지 않아서 발생한 원인일 수 있다. 당황하지 말고 브라우저의 쿠키를 삭제해 보도록 한다. 크롬의 기준으로 오른쪽 상단에 설정 표시 마크를 클릭한 후에 [설정] 버튼을 클릭해 준다. 왼쪽 사이드바에 설정에 대한 메뉴가 나타나는데, [개인정보 및 보안]을 클릭한다. 개인정보 및 보안에 들어가면 [인터넷 사용 기록 삭제] 메뉴 버튼을 클릭한다. 인터넷 사용 기록 삭제 메뉴에서 쿠키를 삭제 해줘야 하는데, [기본] - [전체 기간] - [체크] - [인터넷 사용 기록 삭제] 순으로 진행한다. 나의 경우, 이렇게 쿠..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/emIngf/btrR9Gb8Qq7/418mEnnRaGMpCrExHiGkd0/img.png)
자바(Java)에서 문자열을 다룰 때, String index out of range 숫자와 같은 에러를 종종 확인할 수 있다. 발생하는 이유는 substring과 같은 함수로 문자열을 자를 때 잘라야 할 문자열이 정해진 값보다 작아서 발생할 때 생기는 에러이다. 그러므로 당황하지 말고 문자열의 크기만큼 조절해 주면 해결할 수 있다. 다음 예시는 "12345"라는 5자리의 문자열을 선언한 후, substring 함수를 사용하여 처음부터 6자리까지 자르도록 코드를 작성해 보았다. 그 후에 콘솔에 그 값을 출력할 수 있도록 한다. // 5자리 문자열 String str = "12345"; // 자른 문자열 담을 객체 String newStr = ""; // 문자열 자르기 try { // 6자리까지 잘라내기 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/GtLkO/btrRX2rIfS8/kFIyPkRJckoyOp0aFzWuKk/img.png)
파일 선택 버튼을 클릭하지 않아도 파일 선택 창을 열 수 있도록 해야 했는데, 이것을 자바스크립트(Javascript)에서 사용자가 클릭하지 않아도 강제적으로 이벤트를 실행시키는 click 함수를 사용하여 해결하였다. HTML 코드 input 태그의 type="file"과 button 태그를 하나씩 만들었다. button 태그에는 fnOpen이라는 함수가 클릭하면 실행할 수 있도록 한다. 열기 JavaScript 코드 getElementById 함수를 사용하여 file 노드를 가져온 후 click 함수를 사용하여 대신 파일 선택 창을 열 수 있도록 하였다. 이상, 오늘도 밤톨만큼 코딩했다.
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/v3Fho/btrRRKSNyQO/3udobTu06Eb9HXe8vfHw7K/img.png)
Java에서 JSON 데이터를 읽거나 만들 수 있도록 지원하는 라이브러리가 몇 가지 있는 있는데 오늘은 gson을 사용해서 공부하려고 한다. Depdendency com.google.code.gson gson 2.8.5 JsonObject 사용하기 먼저, JsonObject 객체를 선언한 뒤 addProperty 함수를 사용하여, 그 안에 넣을 필드와 값을 입력해 준다. Gson 객체를 생성하는 방법은 new Gson()과 new GsonBuilder.create() 이렇게 2 가지가 있는데, setPrettyPrinting를 추가해 주면 함수명에서도 알 수 있듯 콘솔에 예쁘게(?) 출력할 수 있도록 해준다. import com.google.gson.Gson; import com.google.gson.G..