목록개발 공부 (113)
Just Do IT!

SODA 프로젝트 중간 발표를 앞두고 배포를 해야 했다.백엔드는 배포 완료했는데, 프론트 배포를 안했다. aws s3로 배포할까 고민하다가 어차피 무료이고 몇 번 해봤던 vercel로 배포하기로 했다. 도메인 주소는 샀는데 아직 추가하지는 않았고, 일단 배포는 완료했는데 이 과정에서 생긴 일들을 기록해보려고 한다. 우선 vercel.이전에 배포했을때는 몰랐는데, github organization 내부에 존재하는 repository는 배포할때 무료가 아니었다.2주 무료 플랜이긴 한데 어차피 그 이후에 돈을 내야 했기에 우회해서 배포하는 방법에 대해 검색해보다가 다행히 찾았다. 바로 팀 Repo를 fork해서 개인 계정으로 가져온 다음, 그. repository를 통해 배포하는 것이었다.그리고 매번 업데이..
프로젝트를 하면서 하루 종일 한 오류만 붙잡고 있던 게 정말 오랜만이다.간단히 코드 추가하는 걸로 끝났지만 간단하지 않았던 오류 해결과정이었다... 간단하게 Article을 생성하는 API를 개발하고 있었다.생성할 때 연관된 article_link, article_file 도 함께 저장되는데 그 부분에서 계속 오류가 생겼다.DB에는 잘 저장되고, 각각 조회도 잘 되는데 이상하게 create한 후 response에서는 나오지 않는 것이다. 우선, Article entity는 아래와 같다.@NoArgsConstructor(access = AccessLevel.PROTECTED)@Getter@Entitypublic class Article extends BaseEntity { private Str..

지금 KERNEL 360에서 기업 연계 프로젝트(=파이널 프로젝트)를 진행하고 있다.이제 기획은 완료했고 개발 단계로 넘어갔는데, 직접 API를 개발하면서 오류가 생겨서 기록하려고 한다. 프로젝트 생성하는 기능을 만들고, 전체 프로젝트 조회를 하려고 하는데 이런 오류가 생겼다. @Repositorypublic interface CompanyProjectRepository extends JpaRepository { Optional findByProjectAndCompanyProjectRole(Project project, CompanyProjectRole companyProjectRole);} 이 method를 통해 해당 프로젝트와, 프로젝트를 담당하는 개발사/고객사를 찾기 위한 것인데unique..

실습을 위한 프로젝트 생성 중,application.yaml 파일에서 SQL 설정을 해주었는데 아래와 같은 오류가 나왔다. 이는에러가 발생하는 이유는 Database에 연결할 때 필요한 정보가 없기 때문이다. 그런데 나는 제대로 작성했는데 왜 안되는지 고민했는데,아주 사소한 부분이지만 중요한 부분을 수정해야 했었다. spring: jpa: show-sql: true properties: format_sql: true dialect: org.hibernate.dialect.MySQLDialect hibernate: ddl-auto: validate datasource: driver-class-name: com.mysql.cj.jdbc.Driver ..

듣고 있는 강의에서 Swagger UI를 사용하기 위해서 의존성 설치를 하고 접속했는데, 이런식으로 404 에러가 나고 있었다.분명 Maven Repository에서 Gradle 잘 복사해왔고 gradle도 다시 빌드했는데, 오류가 나다니..뭔가 이상해서 구글링을 해보았고 Spring 버전에 따라 다르다는 걸 알게 되었다. 해결 방법 스프링부터 3버전 이상부터 SpringDoc을 사용하기 위해 추가해야하는 의존성이 다르다는 것이다. https://springdoc.org/ OpenAPI 3 Library for spring-bootLibrary for OpenAPI 3 with spring boot projects. Is based on swagger-ui, to display the Ope..

데이터 흐름사용자가 브라우저에서 데이터를 입력하여 DTO 형태로 서버에 전송서버는 이 DTO를 받아 DAO를 통해 데이터베이스에 저장데이터를 조회할 때 DAO를 통해 데이터베이스에서 데이터를 가져와 DTO로 클라이언트에게 반환 Spring Boot 에서의 활용Repository : DAO 역할을 한다Controller : DTO를 받아 서비스 계층으로 전달하거나, 서비스 계층에서 받은 데이터를 DTO로 변환하여 클라이언트에게 반환한다추가 구조 보러가기: https://daydream-sy.tistory.com/333 DTO (Data Tranfer Object)계층 간(Controller, View, Business Layer / Spring Boot에서는 뷰, 컨트롤러, 서비스, DAO, DB..
String → int1. Integer.parseInt()java.lang.Integer 클래스의 static 메소드이다.파라미터로 숫자로 변환할 문자열을 입력받고, 입력받은 문자열을 integer로 변환한 int 값을 리턴한다. 예시 코드:public class Main { public static void main(String[] args) { // 변환할 문자열 String str = "1234"; // 문자열을 정수로 변환 try { int num = Integer.parseInt(str); System.out.println("변환된 정수: " + num); } catch (NumberFo..

지난 주에 window 환경에서 redis 를 설치하는 글을 썼었다.https://daydream-sy.tistory.com/360 [Redis] Window 환경에서 Redis 설치하기공식 문서https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/install-redis-on-windows/ Install Redis on WindowsUse Redis on Windows for developmentredis.io 내 노트북은 window라 window에서 설치하기 부분을 찾아봤daydream-sy.tistory.com 그런데,스프링 프로젝트에 redis 적용한 부분이 있는데 실제로 실행해보니 계속 redis 관련 오류가 나는 ..

Protected Route 란?해당 페이지로 이동하기 전에 조건을 명시해주고, 이 조건을 만족했을 때 해당 페이지로 이동가능하고,조건을 만족 못한다면 특정 페이지로 돌아가게 할 수 있다. react-router-dom을 설치한 후 route를 사용할 때 적용할 수 있다. 이번 프로젝트에서는,로그인 여부에 따라 접근 불가능한 곳이 있기 때문에 Protected Route를 이용해서 해주었다. react-router-dom 설치npm install react-router-dom 우선은 당연히 react-router-dom을 설치해야 route를 사용할 수 있으니까 설치한다.나는 기존에 이미 route 설정을 해주었기 때문에 생략한다. ProtectedRouter 설정const Prote..
이번 프로젝트에서는 소셜 로그인이 있기 때문에 쿠키에서 id를 받아와서 로그인 여부를 판단하고 있다.그런데 한 가지 문제점이 생겼다.header에 유저 정보를 가져와야 한다 (유저 프로필)문제집/스터디 페이지에서 유저 정보를 가져와서 생성한 사람과 비교해야 한다. 이런 문제점이 생기는데 콘솔에 찍어보면 쿠키를 통해 가져올 수 있는 정보는 id밖에 없기 때문에백엔드 response, request를 아예 갈아엎어야 하던지 아니면 쿠키에 username을 받아와야 했다.그런데 쿠키에 username을 받아오지 않고 id로만 받아와야만 했기 때문에 (username이 unique key가 아님)그냥 프론트쪽에서 전역적으로 유저 정보를 받아와서 사용할 수 있도록 했다. useContext?react..