목록2024/05/20 (8)
개발학습일지
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dvuL5j/btsHwxVleCC/LNH5KOPAzNkLpwuAXoxJlk/img.png)
Visual Studio Code에서 python flask app.py 파일 코딩 1. 람다용 파이썬 가상환경 생성- 아나콘다에서 가상환경 생성$ conda create -n 가상환경이름 python=3.10 2. 가상환경에 서버개발 프레임워크 설치 _ flask 프레임워크- 아나콘다에서 해당 가상환경에 설치$ pip install flask flask-restful 3. Visual Studio Code 로 서버 개발- app.py 기본 코드 _ flask 기본 구조 잡기from flask import Flaskfrom flask_restful import Apifrom resources.recipe import RecipeListResourceapp = Flask(__name__)api = A..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/crLZvA/btsHumuuu0u/UEtKxaGdaX66dK1i8fFbyK/img.png)
지정된 DB에만 전용으로 접속할 수 있는 계정 만들기 MySQL에서 기존 메인 DB에서 새로운 아이디와 비밀번호를 설정해서 만든다.-- 관리자로 들어간다는 뜻use mysql;-- 레시피 디비 유저라는 ID를 가진 계정을 만들고,-- 네트워크를 통해서 들어올 수 있게 만들었다. 비밀번호 입력create user 'recipe_db_user'@'%' identified by ' ';-- 내가 지정한 DB 내용에 모두 접근할 수 있는 권한을 레시피 디비 유저에게 주겠다.grant ALL privileges on recipe_db.* to 'recipe_db_user'@'%'; MySQL 홈에서 새로운 Connection 만들기1. 이름 정하기2. 메인 connection에서 사용하던 Hostname 작성..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Uu6dc/btsHukXMwLq/WZ5KKCcJNq0l4Mge772UbK/img.png)
포스트맨(postman) 설치하기 만든 API를 테스트하기 위해서는 포스트맨(postman) 이 필요하다.포스트맨 설치하기 - 윈도우로 다운로드https://www.postman.com/downloads/ Download Postman | Get Started for FreeTry Postman for free! Join 30 million developers who rely on Postman, the collaboration platform for API development. Create better APIs—faster.www.postman.com 설치 후 회원가입, 실행해서 Home -> Collecrion -> new 생성 서버에 요청(request) 하기위해서 내가 만든 테스트서버에 오른쪽 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cNdM8B/btsHuKuZV8D/8LKYEONhUKFIK1UvtON3Xk/img.png)
Restfull API 서버 만들기 1. 람다용 파이썬 가상환경 만들기- 아나콘다 프롬프트에서 생성 _ 파이썬 버전 3.10으로 설정$ conda create -n lambda_310 python=3.10 2. 만든 lambda_310 가상환경에 *서버 개발 프레임워크 설치- flask Framework 사용$ pip install flask flask-restful 3.VSC로 서버 개발- github에 새로운 레파지토리 만들어서, github desktop 이용해서 시작한다.- 언어는 python 으로 지정했다. * 서버 개발 프레임워크 (Framework)- 똑똑한 사람들이 프레임워크를 미리 만들어 두었기 때문에 알맞은 위치에 매뉴얼에 맞춰서 잘 작성하면 된다.- 프레임워크 종류 -> 파이썬 ( ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cBPZh9/btsHu6RRYZb/JR0vYbTKWqFohzEeVezRt0/img.png)
Restfull APIAPI(Applicatuon Programming Interface)란?응용 프로그램에서 사용할 수 있도록,운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다API를 통해 소스 및 DB에는 접근하지 못하게 하고 해당 프로그램을 사용할 수 있도록 기능을 제공하게 하는 것이다.REST(Representational State Transfer)란?서버나 서비스에 존재하는 모든 자원(이미지, 동영상, DB자원)에 고유한 URL를 부여해 활용하는 것= 자원을 정의하고 자원에 대한 주소를 지정하는 방법론을 의미Restful API?REST 아키텍처 스타일을 따르는 API를 REST API라고 한다 - AWS API설명 (https://aws.amazon.co..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/d0lCRS/btsHua1IKRS/VY42bc0PcBnZyWJTtmnJC1/img.png)
SQL의 like와 문자열 컬럼에 fulltext 설정 mysql 에서는 데이터를 검색하기 위해 like '% %'구문이 사용된다. 하지만 like 명령어의 경우 Full Scan 방식이기 때문에 많은 데이터를 검색할 때 비효율적이다. 이러한 단점을 극복하고자 검색 할 컬럼에 Fulltext 처리를 해준다 FULLTEXT많은 형태의 데이터가 있을 때 효율적으로 데이터를 찾는 방법중 하나이다. 컬럼에 설정하기- 해당 컬럼이 있는 테이블 설정 인덱스 탭에서 설정한다.- 인데스 이름을 정하고 타입은 FULLTEXT을 선택하고 원하는 컬럼을 선택하면 된다.- 두가지 컬럼에서 검색하고 싶다면, 한 개 더 체크해주면 된다. !! 문자열 like로 찾는 것은 FullText를 이용하기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bVMkZ7/btsHuK183Y9/kQAFmo4j9bAamVUf4ZNeOK/img.png)
화면 기획서보고 필요한 SQL문 만들기 : 영화 리뷰 서비스 관련된 앱의 화면 기획서를 보고 SQL문 작성하기 [ SQL문 만들기 ]화면 기획서를 보고 테이블 생성 > 테스트 데이터 인서트 > 화면에 필요한 SQL문 작성 (클라이언트에게 전달할 데이터 가공) 1) 작성 순서 : 단일 테이블 처리 가능한 것부터 작성하고 메인 화면처럼 여러 테이블 조인하는 것은 맨 나중에 작성한다. 2) 개발자들이 데이터 찾는 것에 문제가 없도록 해당데이터 ID는 항상 같이 넣어준다. 3) 데이터가 많을 경우 페이징 처리한다. limit 키워드를 사용해서 페이징 처리를 한 SQL문을 만든다. 4) 서버 개발자는 데이터를 가공하지 않고 추출해서..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bKRhfF/btsHtGzDZXd/WgTpfCY6nkL9Hgtqtm5Rn1/img.png)
MySQL에서 UQ 설정하기Error Code: 1062. Duplicate entry 가 나오는 이유!: 동일한 항목이 있어서 저장을 할 수 없다는 뜻이다. Error Code: 1062 가 되도록 MySQL에서 설정하는 방법을 밑에서 알아보자. 1. 하나의 컬럼 값을 유니크하게 설정하고 싶을 경우- 고객 이메일 데이터 같은 중복되면 안 되는 항목을 설정할 때 사용한다.- 테이블 생성시 원하는 컬럼의 UQ 체크해 준다. - 설정을 완료하면 인덱스 탭에 유니크 값이 들어가 있는 것을 볼 수 있다. - 모두 확인한 다음 동일한 항목 insert 하면, 밑에 박스와 같은 오류가 뜨면 정상적으로 유니크 값이 설정된 것이다.Error Code: 1062. Duplicate entry 'abc@naver...