들어가며 본격적으로 Flask를 배우는 과정이다. Spring boot만 써보다가 python의 웹 프레임워크인 Flask를 배우게 되니 벌써 기대가 된다. 이번 주차는 Flask의 사용법을 익히고 Spring boot와 기본적으로 얼마나 다른 지 느껴보는 시간도 갖게 될 수 있겠다! 여담이지만 IDE를 Eclipse만 쓰다가 Pyharm을 갑자기 쓰려니 적응이 안되고 보기가 힘들다.. 얼추 구조는 IntelliJ랑 비슷하게 생겨서 추후에 IntelliJ에 적응하는 데에도 도움이 될 것 같다. 시작하기 전 기본 세팅 DB 연결 - 패키지 설치 pymongo : mongoDB를 사용할 수 있게 해주는 패키지 dnspython : 서버를 사용할 수 있게 해주는 패키지 flask : 웹 서버 개발을 위한 프레..
CATEGORY
들어가며 MySQL만 사용해보다가 이번에는 MongoDB를 사용해보게 됐다. 덕분에 DB에 대해 한번 더 복습할 수 있는 기회와 새로운 종류의 DB를 사용해볼 수 있게 되어서 기분이 좋다. DB(Database) : SQL VS NoSQL SQL 흔히 관계형 데이터베이스라고 불리는 SQL(RDBMS)는 행과 열로 이루어져있는 DB이다. 칸칸이 나누어져있는 엑셀이라고 생각하면 된다. 대표적으로 MySQL이 있음! SQL의 가장 큰 특징은 정해진 스키마 즉, 정해진 규격에 따라 DB테이블에 저장된다는 것이다. MySQL을 공부하면 정해진 '문법'에 따라 정해진 '구조' (ex. 테이블, 필드 등)에 맞춰 저장을 해야했다. 또, 이미 테이블의 스키마를 정의해두면 정의된 스키마대로만 데이터를 담을 수 있다! 두..
들어가며 항해99 0주차 테스트를 위해 듣는 웹개발 종합반 강의를 정리하고자 한다. Q. 그런데 왜 3주차부터 시작하는가? 1, 2주차의 강의 내용은 이미 지난 6개월간의 학원 수강기간동안 들은 내용이기도 하고 프로젝트를 진행하면서 질리도록 사용해본 것들이라 굳이 듣지 않고 빠르게 파이썬 강의로 넘어가고자 한번 훑어보는 식으로 듣고 지나갔다. 간단한 html/css와 Javascript/JQuery는 구글링으로 충분히 익힐 수 있는 내용이기도 하니 시간을 아끼기로 했다! JAVA만 사용하다가 파이썬을 사용하려니 사용법이 조금씩 달라서 헷갈린다. 중괄호 ( {} )를 쓰지 않는 대신 콜론( : )을 쓰며, 탭을 엄격히 지켜야한다거나 세미콜론( ; )은 사용하지 않는다는 점 때문에 자꾸 빨간줄이 뜬다. 이건..
++ 새로운 글을 작성하면서 내용을 덧붙였습니다! 2023.08.25 - [Study/Spring boot] - [Spring boot] WebClient 사용해보기 2-1 [Spring boot] WebClient 사용해보기 2-1 들어가며 무려 1년도 더 된 이전글이 항상 내 블로그 인기글 1위인걸 볼 때마다 마음에 걸렸다. 막 개발 공부하기 시작했을 즈음 webClient에 대한 자료가 별로 없어서 정리할 겸 작성했던 글인데 annajin.tistory.com 2023.08.26 - [Study/Spring boot] - [Spring boot] WebClient 사용해보기 2-2 [Spring boot] WebClient 사용해보기 2-2 들어가며 2023.08.25 - [Study/Spring ..
Ecilpes에서 여태 잘만 사용하던 gradel에서 갑자기 에러가 떴다. 공공 API를 사용하기 위해 webcilent를 활용하려고 webflux 디펜던시를 추가한 후 gradle refresh를 했는데 갑자기 날 반기는 시뻘건 에러로그 때문에 뇌정지가 오면서 폭풍 구글링에 들어갔는데... 아니 난 건드린데 코드 한 줄 추가한 거밖에 없는데??? 정말 거짓 하나 없이 지금까지는 문제가 없던 녀석이 갑자기 피를 토하면서 노트북도 버벅이게 만드니까 멘붕이 왔다. 어찌저찌 잘 해결은 했으니 삽질로그를 작성해보고자 한다. 문제 - Unsupported class file major version 61 에러 현재 개발 중인 환경은 다음과 같다 spring boot 2.6.4 jdk 17 gradle 7.2 에러..
간단한 게시판을 만드는 미니프로젝트 중 한글명으로 된 파일을 업로드하고나면 SELECT를 할 때 파일을 불러오지 못하는 에러가 있었다. 생각으로는 우리가 주소창에서 종종 보는 것처럼 %2Fmanage%2Fposts%2F (예시, 현재 글쓰기 창 주소에서 가져왔다. 저런 식이라는 거지 저렇게 만든다는 소리가 아님!!) 이런 식으로 암호화 시켜서 저장하면 되지 않을까 싶은데 하는 방법을 모르니 구글의 힘을 빌려보았다. https://mkil.tistory.com/273 [Spring] 스프링 파일업로드/ file upload/ 파일업로드 한글깨짐 기본적인 Controller와 jsp 경로 호출 등 셋팅은 되어있다는 가정하에 시작한다. (필자는 STS를 사용 > http://mkil.tistory.com/26..
기본적으로 JAVA는 camelCase를 사용하고 MySQL에서는 Snake_case를 권장한다고 한다. Spring boot 공부를 하면서 camelCase와 Snake_case 중 어떤걸 사용해야할 지 몰라서 왔다갔다 제멋대로 사용하고 있었는데 두 표현방식을 적절한 위치에 적절하게 사용해야한다고 한다!!! 로마에선 로마법을 따라야하듯이 말이다. 그럼 둘 사이를 어떻게 왔다갔다 하느냐.. 역시나 방법은 존재한다! 오늘은 Snake_case to camelCase로 형식 변환을 하는 방법을 알아보자. 클라이언트 서버 (Jackson) 클라이언트에서는 snake_case를, 서버에서는 camelCase를 사용하므로 클라이언트 측에서 파라미터를 받아올 때 이걸 camelCase로 바꿔주어야 Dto가 해당 파..
https://www.sqlstyle.guide/#tables SQL style guide by Simon Holywell A consistent code style guide for SQL to ensure legible and maintainable projects www.sqlstyle.guide MySQL을 공부하면서 이름을 쓰는 데에도 일정한 규칙이 있다는 걸 알게되었는데, 그 규칙이 헷갈려서 정리해보려고 한다. 찾아보니 각 회사마다 사용하는 규칙이 따로 존재한다고 하니 이 저자의 글이 절대적이지 않다는 점을 숙지하고 참고만 하자! 공통 Snake_case를 사용한다. 문자로 시작해야하고, _(underscore)로 끝나면 안된다 _(underscore)를 연속으로 여러개 쓰지 말 것 이름에 공..
http://www.tcpschool.com/mysql/mysql_index_create 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 tcpschool.com INDEX 인덱스란? MySQL에서 SELECT를 하면 가장 처음 데이터부터 마지막 데이터까지 순차적으로 검색을 한다. 데이터가 적은 테이블에서는 문제없이 빠른 속도로 검색이 되지만 데이터가 매우 많은 테이블에서 SELECT를 한다면... 데이터를 일일히 검색하려면 시간이 꽤 많이 걸릴 것이다. 이 말인 즉슨, 성능저하가 필연적으로 일어난다는 말이다. 데이터가 많은 테이블에서 유용하게 사용되는 녀석이 바로 인덱스이다. 인덱스는 마치 책에서의 목차와 같은 역할을 수행해 어떻게 사용하느..
http://www.tcpschool.com/mysql/mysql_multipleTable_join 코딩교육 티씨피스쿨 4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등 www.tcpschool.com 다중 테이블 연산 다중 테이블 연산이란 말그대로 여러 개의 테이블을 연산하는 것이다. 두 개의 테이블에 연산을 하려면 테이블1 -> 연산, 테이블2 -> 연산 총 두번의 과정을 거쳐야하지만 다중 테이블 연산을 통해 한번에 여러개의 테이블을 가져올 수 있다. MySQL에서 제공하는 다중 테이블 연산문은 다음과 같다. JOIN UNION 서브쿼리 JOIN JOIN은 여러 개의 테이블에서 가져온 데이터들을 하나의 테이블이나 결과의 집합으로 표현해준다. 보통 SELECT문..
반응형