우아한 프로그래밍
반응형
article thumbnail
[자바/Java] serialVersionUID에 대해 알아보자.
프로그래밍/Java 2022. 12. 13. 23:36

serialVersionUID란 무엇인가? serialVersionUID는 시리얼 통신을 하는 클래스의 버전을 표시하는 것이다. 자바에서는 객체를 직렬화(Serialization)하여 바이트스트림으로 만들어서 저장한다. 이때 저장되는 바이트스트림에는 버전정보인 serialVersionUID가 포함되게 된다. 이 후 바이트스트림을 역직렬화(Deserialization)하여 자바의 객체로 만들때 버전을 체크하게되는데 이 때 사용되는 버전정보가 바로 serialVersionUID이다. 자바 직렬화란? 자바 객체를 바이트스트림으로 만들어서 파일, 데이터베이스, 메모리, 네트워크 송신이 가능하도록 하는 것이다. 자바 역직렬화란? 파일, 데이터베이스,메모리, 네트워크로 부터 수신된 바이트스트림을 자바객체로 변환하는..

article thumbnail
HTTP Cookie(쿠키)에 대해 알아 보자.

Cookie 란 무엇인가? 쿠키란 사용자가 임의의 웹사이트를 방문할 경우 웹브라우저를 통해서 사용자의 컴퓨터에 저장되는 작은 기록파일을 말합니다. HTTP 요청은 Stateless(무상태)한 특성을 가지고 있기 때문에 사용자의 상태를 저장하기 위해서 사용합니다. 사용자에 의해 HTTP 요청이 발생하면 웹브라우저는 쿠키를 웹사이트에 같이 전송해 줍니다. Cookie 는 어디에 저장되는가? 쿠키는 웹사이트를 접속한 사용자의 디바이스(휴대폰, 태블릿, PC 등)에 저장됩니다. Cookie와 Session은 어떤 차이점이 있는가? 공통점 사용자의 상태를 저장한다. 차이점 Cookie는 사용자의 로컬 디바이스에 저장되지만 Session은 WebServer에 저장된다. Cookie는 디스크에 저장되지만 Sessio..

article thumbnail
Window10 + 파이참(PyCham) + pipenv를 이용한 파이썬 개발환경 구성하고 배포하기
카테고리 없음 2022. 8. 13. 13:27

파이썬 다운로드 먼저 파이썬 사이트에 접속해서 파이썬을 다운로드 하도록합니다. https://www.python.org/ Welcome to Python.org The official home of the Python Programming Language www.python.org 파이썬을 다운로드 받고 설치버튼을 누르면 아래와 같이 나옵니다. 아래 체크를 진행해서 환경변수에 등록하고 설치를 진행합니다. 환경변수에 등록을 해야 파이썬의 명령을 CMD 창에서 바로 사용 할 수있습니다. 파이썬이 설치된 폴더를 잠깐 살펴보면 아래와 같습니다. libs 폴더에는 pip를 이용하여 설치한 모듈들이 들어있습니다. Scripts 폴더에는 파이썬 명령어가 들어가게됩니다. 저 스크립트 부분이 설치할때 환경변수 패스에 등..

article thumbnail
Electron + Vue를 이용하여 데스크톱앱 만들기!
카테고리 없음 2022. 7. 20. 00:16

1. 사전작업 아래 사이트에 들어가서 NPM을 설치해주세요. npm 은 자바스크립트 프로그래밍 언어를 위한 패키지 관리자입니다. https://nodejs.org/ko/ 비주얼 스튜디오 코드 설치 해당 글에서는 비주얼 스튜디오 코드로 설명을 드립니다. https://code.visualstudio.com/ 2. 설치하기 프로젝트를 생성하기 위한 적당한 폴더로 이동해주세요. 저는 아래 위치에다가 작업을 하겠습니다. C:\Project\workspace2 해당 경로에서 아래 명령어를 수행해주세요. npm install -g @vue/cli npm -i -g @vue/cli-init vue create electron-vue 마지막 명령어를 입력 후 아래 그림 처럼 설정해주세요. 스페이스 바를 누르면 체크를 ..

article thumbnail
InteliJ에서 루트폴더에 나타나는 Window 경로 없애기
프로그래밍/InteliJ 2022. 5. 23. 15:19

방법 InteliJ 프로젝트 트리를 보면 기본적으로 윈도우 경로가 표시된다. 이게 사실 큰 문제는 아니지만 GIT 플러그인을 설치하고 보면 쓸때없이 윈도우 경로가 표시되서 현재 프로젝트가 어떤 브랜치인지 알 수가 없다. 알고싶으면 프로젝트 트리창을 옆으로 늘려야하는데 그러면 소스에디터 창이 좁아지고 아무튼 불편하다. 그러면 어떻게 없앨까?? 간단하다. 메뉴바에서 [Help] -> [Find Action...] 선택한다. 아래와 같이 registry... 입력하고 선택한다. 선택하면 아래와 같은 창이 뜨는데 project.tree.structure.show.url 을 찾아 체크 해제하고 Close 버튼을 누르고 InteliJ를 재실행 한다.

article thumbnail
내가 어떤 일부터 해야 할 지 모르겠다면 우선순위프레임워크를 활용하라!
Etc. 2022. 4. 26. 09:41

1. 개요 우선순위프레임워크란 본인이 우선순위를 정하지 못할 때 도움을 줄 수 있는 방법이다. 2. 방법 사실 그림만 보더라도 너무 당연한 이야기 일수 있지만 보고 실천하도록 노력하자. 기본적으로 어떤일을 먼저해야할때 노력과 가치의 측면에서 어떤일을 먼저해야할까? 바로 2번이다. 낮은 노력으로 높은 가치를 낼수있다면 이보다 더 훌륭한 우선순위 설정이있을까? 그리고 가장 늦게 고려되어야하는 일은 3번 높은노력대비 낮은 가치의 일이다. 다음으로 긴급도와 중요도사이에서 일을 결정할때는 과연 어떤일을 먼저선택해야할까? 바로 1번 높은 긴급도와 높은 중요도가 우선고려되어야하고 3번의 경우 가장 늦게 고려되어야한다.

article thumbnail
Postman에서 POST 요청 시 JSON에 주석 달기
카테고리 없음 2022. 4. 18. 14:11

1. 개요 Postman에서 Get요청은 설명을 달수 있지만 Post요청의 경우 바디에 설명을 달수가 없다. 따라서 어떠한 요청값인지 문서를 통해서만 조회를 할 수 있는데 직접 바디에 주석을 달수 있는 방법에 대해서 알아보려한다. 2. 방법 Pre-request Script라고 요청을 보내기전에 저 스크립트가 도는대 그 부분에 아래 코드를 넣어주면된다. if (pm?.request?.body?.options?.raw?.language === 'json') { const rawData = pm.request.body.toString(); const strippedData = rawData.replace( /\\"|"(?:\\"|[^"])*"|(\/\/.*|\/\*[\s\S]*?\*\/)/g, (m, g) ..

article thumbnail
[업비트] 비트코인 자동매매 프로그램
Etc. 2022. 3. 31. 02:09

오랜만에 개발을 재미있게 한 것 같다. 사람은 역시 무언가 목표가 있어야 꾸준하게 할 수 있는 것 같다. 아래 사진은 개발중인 비트코인 자동매매 프로그램이다. 파이썬을 이용해서 개발했다. 분명 자동매매는 백테스팅이 필요하다 가령 어떤지점에서 오매수, 오매도가 일어났는지 아쉬운지점 등등을 파악할수있어야 프로그램을 개선할수있다. 그건 아래 사진처럼 구현해보았다. 매수/매도지점을 표현해주고 가장 최근 매도에 대한 매수정보를 상단 텍스트로 표현해준다. 빨간점이 매수 파란점이 매도이다. 좀더 개발을 해봐야겠다..

article thumbnail
Maven을 실행가능한 jar에 클래스 패스를 설정하는 방법
카테고리 없음 2021. 6. 25. 16:02

1. 방법 ... 생략 org.apache.maven.plugins maven-jar-plugin 2.3.2 cicm-interface ${project.basedir}/target true a.b.c.Main true ../resources/lib/commons-collections-3.1.jar ../resources/lib/commons-dbcp-1.2.1.jar ../resources/lib/commons-pool-1.2.jar ... 생략

article thumbnail
CentOS 방화벽(Firewalld) 설정하기!
카테고리 없음 2021. 6. 22. 00:26

1. 방화벽 설정하기 1. 방화벽이 동작하는지 확인하기 > systemctl status firewalld 2. 방화벽 목록 > firewall-cmd --list-all 3. 방화벽 시작 > systemctl start firewalld 4. 방화벽 중지 > systemctl stop firewalld 5. 방화벽 수정 후 리로드 > firewall-cmd --reload 6. 방화벽 추가/제거 ( 포트) > firewall-cmd --add-port=21/tcp > firewall-cmd --remove-port=21/tcp 7. 서비

반응형