미니프로젝트

[TIL] 6주차 미니 프로젝트ㅣ프론트 서버 배포, 발표
미니 프로젝트 [감자마켓] 진행 상황 프론트 서버 배포 프론트 조원분들은 막바지 작업에 한창이셨고, 백 쪽은 어느 정도 작업이 마무리돼서 발표 자료를 준비하고 있었다. 당일 오후 7시까지 과제 제출인데, 5시까지도 작업이 끝나지 않은 상황이었다. 이대로 손 놓고 구경만 할 수는 없었다. 프론트 조원분께 서버 배포 관련 자료를 넘겨받아 내가 직접 프론트 서버를 배포하기로 결정했다. 이전에 다중 이미지 업로드를 구현하면서 다뤄봤던 AWS S3라서 큰 무리는 없겠다 생각했다. AWS S3를 이용한 정적 웹사이트 호스팅 이미지 업로드 때와 마찬가지로 AWS S3 버킷 생성 - 객체 소유권 비활성화 / 퍼블릭 액세스 차단 해제 정적 웹사이트 호스팅 활성화 버킷 정책 생성 IAM 사용자 생성 AWS CLI 설치 (..

[TIL] 6주차 미니 프로젝트ㅣReact + Spring boot 연동
미니 프로젝트 [감자마켓] 진행상황 React + Spring boot 연동 어제에 이어 프론트 분들이 만들어주신 화면에 API를 붙여 하나씩 테스트를 진행했다. 정말 말도 안 되게 많은 에러를 만났다. 너무 많이 만나서 무슨 에러를 만났는지 기억도 안 날 정도로.. CORS 에러 해결 대표적인 CORS 에러는 센스 있는 조원분이 미리 WebSecurityConfig에 추가해놓은 코드로 비교적 쉽게 해결할 수 있었다. @Bean public CorsConfigurationSource corsConfigurationSource(){ CorsConfiguration config = new CorsConfiguration(); config.addAllowedOrigin("http://localhost:3000..

[TIL] 6주차 미니 프로젝트ㅣAWS EC2 서버 배포
미니 프로젝트 [감자마켓] 진행상황 어제 기술 매니저님이 추천해주신 코드리뷰를 진행했다. 각자가 구현한 기능에 대한 설명과 함께 다양한 시선으로 코드를 볼 수 있어 유익한 시간이었다. 한층 다듬어진 코드를 AWS EC2 서버에 배포했다. 주특기 주차를 지나면서 배포는 생각만 해보고 이번에 첫 시도였는데, 생각보다 어렵지 않았다. AWS EC2에 Spring boot 프로젝트 배포하기 배포 파일 인텔리제이에서 빌드하기 EC2 서버에 OpenJDK 설치하기 sudo apt-get update sudo apt-get install openjdk-11-jdk java -version 파일질라를 이용해서 배포 파일 서버에 업로드하기 스프링 부트 작동시키기(끝내기는 Ctrl + C) java -jar JAR파일명...

[TIL] 6주차 미니 프로젝트ㅣAWS RDS, S3 다중 이미지 업로드
AWS RDS 클라우드 DB AWS RDS(Relational Database Service)란? 애플리케이션에 필요한 빠른 성능, 고가용성, 보안 및 호환성을 제공하는 클라우드 환경 관계형 데이터베이스 기존에는 원활한 테스트를 위해 조원 각자의 로컬에 MySQL을 설치하고 사용했으나, 어느 정도 프로젝트가 완성되면서 데이터베이스를 공용으로 써야 할 필요성이 느껴졌다. 그래서 AWS에서 제공하는 RDS 서비스를 이용하기로 했다. Spring boot 프로젝트에 RDS 적용하기 AWS에 로그인 후, RDS 구매(프리티어) - 퍼블릭 액세스 기능을 "예"로 설정해야 로컬과 RDS가 연결 가능 RDS 포트 열어주기 - 보안 그룹 → 인바운드 규칙 편집 → 소스를 위치무관으로 설정 인텔리제이(IntelliJ)에..

[TIL] 5주차 미니 프로젝트ㅣAWS S3를 이용한 이미지 업로드
AWS S3를 이용한 이미지 업로드 항상 해보고 싶은 부분이었는데 이번 기회에 도전해볼 수 있어서 신난다! 벌써 난관이 예상되지만..😂 할 수 있다! 📚 참고자료 AWS - S3 사용하기 (버킷 만들기) S3는 AWS(Amazon Web Service)에서 제공하는 인터넷 스토리지 서비스입니다. S3(Simple Storage Service) 를 뜻합니다.높은 내구도를 자랑하며 정보를 안전하게 저장 할 수 있습니다.저렴한 비용으로 사용이 가 velog.io SpringBoot & AWS S3 연동하기 안녕하세요? 이번 시간엔 SpringBoot & AWS S3 연동하기 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하..

[TIL] 5주차 미니 프로젝트ㅣ주간 시작
미니 프로젝트 주간 시작 3주에 걸친 주특기 기간이 끝이 나고, 미니 프로젝트 주간이 시작되었다. 이번 주차는 드디어 프론트엔드와 백엔드가 만나 협업하는 시간! 나는 이번 주차에 팀장을 맡게 되었다. 긴장되기도 하지만.. 동시에 설렘 가득이다. 세부 일정은 다음과 같다. 12/16 (금) 19:00 까지 : S.A. 제출 완료 12/16 (금) 21:00 : 스프링 & 리액트 협업 세션 12/17 (토) 오후 : S.A. 서면 피드백 확인 12/19 (월) 저녁 : 팀별 프로젝트 중간 멘토링 12/22 (목) 19:00 까지 : 미니 프로젝트 완성본 제출 12/22 (목) 저녁 : 팀별 프로젝트 회고 발표 기획 회의 1. 프로젝트 주제 프로젝트 이름 : 감자마켓 - 감사합니다 자알쓰겠습니다-! 프로젝트 ..

[TIL] 1주차 미니 프로젝트ㅣ발표
☕ Coffee Duckhu(커피덕후) ☕ 1. 프로젝트 소개 커피 덕후(coffee Duckhu) 커피 덕후는 커피에 진심인 사람들이 모여 카페별로 인기 메뉴를 살펴보고 나만의 커피 컬렉션을 만들 수 있는 서비스입니다. 👇커피 덕후 보러 가기👇 http://coffeeduckhu.shop/ 👇커피 덕후 Github 보러 가기👇 https://github.com/ingwang-kim/coffee_duckhu 2. 주요 기능 프랜차이즈 카페의 메뉴를 크롤링하여 DB 저장 카페별 커피 정렬 기능 커피 즐겨찾기 기능 즐겨찾기 개수로 순위를 매겨 인기 커피 정렬 기능 즐겨찾기 한 커피를 볼 수 있는 마이페이지 커피에 대한 설명과 영양정보를 보여주는 상세 조회 페이지 좋아하는 커피에 댓글 기능 JWT를 이용한 회..

[TIL] Flask 로그인/회원가입 구현하기(JWT, 유효성 검사)
인증 방식에 대해 웹서비스의 필수 기능이라고 할 수 있는 로그인, 회원가입 기능. 서버에서 회원을 인증하는 방식은 여러 가지이다. 이전에는 세션을 이용한 방식으로 로그인을 구현했었는데, 오늘은 토큰 기반 인증 방식의 JWT를 이용해보려 한다. 회원가입 기능을 구현해보자 회원가입 로직 회원가입을 하기 위해 필요한 정보를 선별한다.(아이디, 닉네임, 비밀번호 등) 각각의 규칙을 정해 검사하고, 저장된 회원 정보와 중복되는 값이 없도록 확인한다. 확인이 끝났다면, 입력 정보를 DB에 저장한다. 이때, 비밀번호는 항상 암호화 필수! 비밀번호 암호화 해시 함수란? 알고리즘의 한 종류로서 임의의 데이터를 입력받아 항상 고정된 길이의 임의의 값으로 변환해주는 함수이다. sha256은 어떤 길이의 입력값을 넣어도 항상..