일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- bytecode
- 파이썬
- Python
- db
- Spring
- Spring Boot
- rabbitmq
- 웹 개발
- 장고
- java
- 데이터베이스
- 스프링 부트
- mysql
- 스프링부트
- 자바
- 보안
- 안드로이드
- 스프링
- 개발
- 자료구조
- python3
- 파이썬3
- HTTP
- BCI
- 디자인 패턴
- ORM
- JPA
- django
- 웹
- node.js
- Today
- Total
목록분류 전체보기 (104)
semtax의 개발 일지
개요 이번 포스팅에서는 파이썬에서 쉽고 편하게 HTTP(S) 요청을 보내고 받을 수 있는 Requests 라이브러리에 대해 알아보도록 하겠다. Why Requests? 사실 파이썬에는, http(s) 요청을 보내고 받을 수 있는 urllib이나 httplib과 같은 내장 라이브러리들이 존재한다. 하지만, 파이썬 내장 라이브러리들은 사용하는게 불편하다는 단점이 존재한다. 그래서 파이썬 HTTP 라이브러리로 여러가지가 나왔는데, 그 중에서 가장 많이 쓰고있는것이 바로 이 Requests 라이브러리이다. 설치 아래 명령어를 이용해서 설치를 수행하면 된다. $ pip3 install requests 일단 사용은 아래와 같이 하면 된다. import requests r = requests.post('https:/..
개요 이번 포스팅에서는 크롬 브라우저에서 안드로이드 디버깅을 할 수 있는 stetho에 대해서 알아보도록 하겠습니다. Sthetho? Sthetho는 페이스북에서 개발한 크롬 브라우저에서 안드로이드를 디버깅 할 수 있게 해주는 안드로이드 라이브러리입니다. 보통 이러한 것들을 보고 디버그 브릿지(Debug Bridge) 라고 합니다. 설치 & 사용방법 먼저 안드로이드 gradle 파일에 아래 내용을 넣어 줍니다. implementation 'com.facebook.stetho:stetho:1.5.1' 만약 retrofit이나 okhttp 등의 http 통신 내용도 보고싶은 경우 아래내용을 추가해줍니다. implementation 'com.facebook.stetho:stetho-okh..
개요 이번 포스팅에서는 스프링 부트를 이용해서 게시판을 작성하면서 발생하는 예외들을 처리하는 법에 대해서 학습을 하도록 하겠다. 입력값 검증 및 예외 처리 소프트웨어를 개발하면서 피할 수 없는 것들이 3가지가 있다. 바로 소프트웨어 버그, 입력값 검증, 그리고 장애 대응이다. 어떠한 프로그램이나 서비스를 외부에 공개한다는 것은, 전장터 한복판에 던져지는 것과 매우 흡사하다. 엄청나게 많은 트래픽, 수많은 사용자들의 이상한 값 들(id 필드에다 부동소수점이나 특수문자들을 넣는 거라던가..), 엄청나게 쌓이는 파일로 인한 용량초과, 수 많은 데이터베이스 커넥션 생성으로인한 DB커넥션 에러, 엄청나게 많은 입력값들과 그에 따른 버그, 예외사항들이 발생하게 된다. 따라서, 저러한 수 많은 예외들을 처리하지 않으..
소개 개인적으로 스프링이나 자바쪽을 구글 검색을 하면서 공부하고 있는데, 해당 사이트의 정보들이 구글에 뜨고, 실제로도 유용하게 배운 정보들이 많이 있다. 그래서 다른 사람들도 알면은 좋을거 같아서 같이 공유해보도록 하겠다. https://www.baeldung.com/
개요 이번 포스팅에서는 마크다운 문서에서 도표나 그림을 그려주는 mermaid라는 라이브러리를 소개하도록 하겠다. 설치 Typora와 같은 경우, 기본 내장이 되어있어서 굳이 설치를 안해도 된다. 만약 티스토리와 같은 서비스에서 사용하려면 다음 코드를 추가해주면 된다. 예제 아래 예제는 그래프를 그리는 예제이다. graph TD A[Christmas] -->|Get money| B(Go shopping) B --> C{Let me think} C -->|One| D[Laptop] C -->|Two| E[iPhone] C -->|Three| F[fa:fa-car Car] 아래 예제는 시퀸스 다이어그램을 그려주는 예제이다. sequenceDiagram Alice->>+John: Hello John, how ..
개요 이번 포스팅에서는, 스프링부트의 ORM(Object Relation Mapping) 라이브러리인 Spring-data-jpa를 이용하여 실제 데이터베이스에 값을 넣고 빼고, 수정하고, 읽어오는법(CRUD)을 익혀보도록 하겠다. 테이블(Relation) 과 객체의 불일치 이번 섹션은 제 개인적인 견해가 일부 들어가있을수 있으므로, 꼭 다른 사람 의견도 같이 들어서 옳은것을 취사선택 해주시기 바랍니다. 평소에 웹 개발을 하다가 보면, 사용자의 요구사항에 맞게 다양한 형식의 데이터를 받고, 가공해서 데이터베이스(특히 RDBMS)에 저장하는 작업을 많이한다. 결국 개발시에는, (자바기준으로) 데이터를 받아서 객체에 담고 데이터가 담긴 객체(VO, DTO)의 값을 꺼내서 SQL 쿼리에 매핑한다음에(DAO가 ..
개요 이번 포스팅에서는 pyenv를 설치해서 python 버전관리 하는법을 알아보도록 하겠다. 버전관리 아래의 상황을 가정해보자. 당신이 열심히 파이썬으로 개발을 하고있는데, 당신의 컴퓨터에는 python 3.8 버전이 깔려있다. 하지만, 회사 운영환경은 python 3.6 버전을 쓰고 있고, 당신은 지금 개인 프로젝트를 python 3.8버전으로 하고있다. 게다가, 당신이 받은 다른 업무는 python 3.5를 쓰고 있는 상황이다. 또한, 이 3가지 버전마다 호환이 안되는 부분이 존재해서 단 1버전만을 선택해서 개발을 할 수 가 없는 상황이다. 이럴때 당신은 어떻게 하겠는가? 위와 같은 상황을 위해서 한 컴퓨터에(단일 OS에) 여러가지 파이썬 버전(python 3.8, 3.7, 3.5)이 공존할수 있게..
개요 구글 protobuf는 XML이나 json과 같이 데이터 교환을 위해 만들어진 포맷으로 구글에서 제작하였다. json과는 다르게 바이너리 형태로 포맷이 이루어져있어서 json보다는 속도가 빠르다. 하지만, 별도의 컴파일러를 이용해서 스키마(데이터를 정의)파일을 컴파일을 해서 사용해야하기 때문에, 데이터 포맷을 변경하기가 json보다는 까다롭다는 단점이 있다. 또한, 구글에서 제공하는 RPC(Remote Procedure, 주로 서비스간 통신을 주고받을때 많이 사용 함, 비슷한 서비스로 apache thrift가 있다)프레임워크인 gRPC와 같이 쓰이는 경우가 많다. protobuf는 데이터의 타입을 정의하는 schema파일인 .proto파일과 이를 컴파일해서 사용하는 각 언어별 protobuf 라이..