목록Back-end (5)
김현빈의 개발새발

이제 url을 따오는것을 데이터베이스의 이름값을 불러와 검색어에 검색하여 따오게 하고 이를 데이터베이스에 저장하는 과정을 설명하도록 하겠다. 이 경우엔 웹페이지의 검색을 데이터베이스의 이름값들을 검색하게 하고 이를 통해 나오는 이미지의 url값을 데이터베이스의 image 컬럼에 삽입해주는 과정을 이름의 처음부터 끝까지 순회하게 해야한다. # MySQL 연결 설정 db_config = { 'host': 'localhost', 'user': '유저명', 'password': '비밀번호', 'database': '데이터베이스명' } # MySQL 연결 conn = mysql.connector.connect(**db_config) cursor = conn.cursor() 먼저 파이썬 환경에서 MySQL과 연결을..

필자의 이전 글인 Apache POI를 이용하여 엑셀파일(.xlsx)을 데이터베이스에 저장하는 과정을 설명한 글을 보고오면 이해가 쉬울것이다. 이전에 Apache POI를 이용하여 엑셀파일 안에 있는 데이터들을 추출해 데이터베이스에 저장하였는데, 필자가 필요로 하는 데이터는 음식의 기본적인 이미지 url, 해당 음식의 이름, 해당 음식의 영양정보가 담긴 데이터였는데 받아온 파일에는 음식의 이미지 url이 따로 담겨져 있지 않았다. 검색을 통해 일일히 음식의 이미지 url을 삽입해주기엔 데이터의 양이 7000건이 넘어 사실상 불가능했고, 필자는 이를 파이썬을 통한 웹페이지 크롤링을 이용해 문제를 해결하기로 하였다. 먼저 크롤링을 해올 웹사이트를 선정해야 했고, 가장 유명하고 사용량이 많은 구글로 시도를 해..

DTO와 Entity를 구성하고 이를 저장하는 코드는 모두 구성하였고, 엑셀파일을 데이터베이스에 저장해주는 Service단과 Controller단의 설명을 이어가도록 하겠다. 우선 application.properties에 excel.file.path=food.xlsx //엑셀파일이 저장되어 있는 경로지정 spring.servlet.multipart.max-file-size=100MB //처리할 데이터의 용량 100MB로 지정 spring.servlet.multipart.max-request-size=100MB 해당 코드를 추가해준다. 해당 코드는 엑셀파일을 불러와야 하기 때문에 엑셀파일이 저장되어 있는 경로를 지정을 하였고, 기본적으로 데이터를 처리할수 있는 기본 용량은 1MB로 설정이 되어있기 때문에..

필자는 단체 프로젝트를 진행하던 중, 음식의 영양성분을 제공하는 페이지를 담당하여 이를 진행하였다. 데이터베이스에 저장할 데이터의 출처는 https://various.foodsafetykorea.go.kr/nutrient/ 로 식품의약품안전처에서 제공해주는 데이터로 이 데이터 안에는 식품명, 분류정보, 칼로리, 각종 영양성분의 함량 등이 포함되어 있다. 제공하는 데이터는 OPEN API 나 엑셀파일(.xlsx)의 두가지 형식으로 제공하는데, 기획 초기에는 OPEN API 형식으로 받아와서 데이터를 처리하려고 하였으나 음식 데이터의 갯수가 7000건이 넘는 많은 양이기도 하고 OPEN API가 문제가 생기거나 데이터를 보내주는 과정에서 지연이 생긴다면 원활한 서비스 이용이 불가능하다고 판단, 엑셀파일로 되..

IntelliJ의 프로그램이나 코드를 실행시키면 콘솔 화면에서 한글이 깨지는 경우가 있다. 이런식으로 한글이 출력되어야 하는데 정상적으로 한글 텍스트가 출력되지 않는것을 볼수있다. 해결 방법은 세가지가 있다. (가장 간단한 첫번째 방법부터 시도하여 해결이 안된다면 두번째, 세번째까지 시도한다면 해결될것이다.) 첫번째 방법 우선 첫번째 방법은 Settings에서 Editor의 File Encoding에서 Global Encoding과 Project Encoding 을 UTF-8로 변경하는 것이다. 한글 텍스트가 깨진다면 해당 설정이 다르게 되어있을것이다. 이를 두 항목 다 UTF-8로 설정을 해준다. 설정 후에 IntelliJ를 재시작하여 한글화가 되어있는지 확인한다. 두번째 방법 두번째 방법은 상단바의 ..