
문제 InteliJ 네이버 Java 코딩 컨벤션 적용하기 + Checkstyle InteliJ 네이버 Java 코딩 컨벤션 적용하기 + Checkstyle 코딩 컨벤션이란? 코딩 컨벤션이란 가독성이 좋고 관리하기 쉬운 코드를 작성하기 위한 코딩 스타일 규약을 말한다. 코딩 컨벤션을 준수하면 bestinu.tistory.com 위의 자료를 참고하여 네이버 Code Convention을 적용하려고 하였습니다. 그리고 Check Style을 사용한 결과 아래와 같이 '[newline-lf] Line must end with LF, not CRLF [RegexpMultiline]' 란 경고가 많이 발생하였습니다. Check Style: 소스 코드가 지정된 Code Convention을 준수하는지 확인하기 위한 ..
![[MySQL] 외래 키(Foreign Key) 삭제하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FblBEwt%2FbtsFjUEXYQI%2FFKGnfDh4NrVObfJhCEZ16K%2Fimg.png)
상황 코드를 수정하다 보니 Diary 테이블에 사용하지 않는 외래키들이 많아서 삭제하려고 합니다. (보기 불편..ㅇㅁㅇ) 외래키 삭제 외래키를 삭제하기 위해서는 제약조건을 확인해야 합니다. 제약조건(constraint)은 데이터의 무결성을 지키기 위해, 데이터를 입력받을 때 실행되는 검사 규칙을 의미합니다. select * from information_schema.TABLE_CONSTRAINTS; 위의 코드로 조회를 하였더니, diary 테이블에 제약 조건이 여러 개가 있습니다. 이 중에서 사용하지 않는 외래키인 recommended_activity_id와 stress_level_id를 찾아야 합니다. show create table diary 위의 결과에서 제약 조건명을 확인합니다. 예를 들어 str..
![[GCP] SpringBoot에서 GCS에 오디오 파일 저장하기(2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Frb4cF%2FbtsEXuBIMzp%2FFZ6yPriUQlSU53rWLOL7iK%2Fimg.png)
https://kyko.tistory.com/44 다음 내용입니다. 프로젝트 세팅 1. json키 프로젝트에 추가 생성한 Json 키를 resources에 추가해 줍니다. 2. build.gradle 추가 // Google Storage implementation group: 'org.springframework.cloud', name: 'spring-cloud-gcp-starter', version: '1.2.5.RELEASE' implementation group: 'org.springframework.cloud', name: 'spring-cloud-gcp-storage', version: '1.2.5.RELEASE' 3. yml 파일 수정 spring: cloud: gcp: storage: cre..
![[GCP] SpringBoot에서 GCS에 오디오 파일 저장하기(1)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2tsLZ%2FbtsEcaW1cO4%2FZnX4uUYdNyEFK5AS6jyjx0%2Fimg.png)
Cloud Storage Bucket 생성 GCS(Google Cloud Storage)는 데이터를 저장하기 위한 관리형 서비스를 말합니다. 이는 AWS S3와 유사합니다. 1. GCP 콘솔로 이동 클라우드 컴퓨팅 서비스 | Google Cloud 데이터 관리, 하이브리드 및 멀티 클라우드, AI와 머신러닝 등 Google의 클라우드 컴퓨팅 서비스로 비즈니스 당면 과제를 해결하세요. cloud.google.com 2. Cloud Storage - 버킷으로 이동 버킷은 데이터를 담는 기본 컨테이너를 말합니다. 3. 버킷 만들기 저는 웹사이트 호스팅을 위해 사용하기에 '이 버킷에 공개 액세스 방지 적용'을 미체크로 만들었습니다. 만약 데이터가 공개 인터넷에 노출되어서는 안 되는 경우 체크 표시를 해야 합니다..

문제 구글 STT(Speech-to-Text) 서비스를 사용하여 구현을 하던 도중 아래와 같은 에러가 발생했습니다. java.lang.ClassNotFoundException: io.grpc.internal.AbstractManagedChannelImplBuilder at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[na:na] at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) ~[na:na] at java.base/java.lang.ClassLoader.loadClass(..
![[Docker] Spring Boot + Docker + EC2 배포](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqO0BE%2FbtsDnDk9YIh%2FOjmviLv0rQse5PfyVyHr11%2Fimg.webp)
배포 과정 요약 로컬에 Dockerfile 생성 프로젝트를 build 하여 jar파일 생성 Docker Build를 하여 Docker Image 생성 Docker Image를 dockerhub에 push AWS EC2 서버에 Docker Image를 pull Docker Run 명령어를 통해 Docker Image를 실행 Dockerfile을 Docker Image로 만들기 1. 프로젝트 하위에 Dockerfile 파일을 만들어줍니다. 2. Dockerfile 코드를 작성합니다. # open jdk 11 버전의 환경을 구성 FROM adoptopenjdk/openjdk11:latest # build가 되는 시점에 JAR_FILE이라는 변수 명에 build/libs/*.jar 선언 # build/libs ..
![[GCP] 구글 클라우드 플랫폼을 이용한 DB 생성](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbEdSBW%2FbtsC9Abd4eh%2Fyr3O1kvsvBbYyYt5VdCJgK%2Fimg.png)
인스턴스 생성 1) 화면 왼측 메뉴 -> SQL -> [인스턴스 만들기] 클릭 2) 인스턴스 정보 입력 비밀번호: MySQL root 패스워드 영역 가용성: 보통 개발은 단일, 운영은 멀티 영역을 선택 공개 IP: 데이터베이스가 외부에서 접근 가능한 공개 IP를 할당받아 인터넷을 통해 데이터베이스에 접근 가능 비공개 IP: 내부 네트워크를 사용하여 데이터베이스에 연결 3) 요약 4) [인스턴스 만들기] 클릭 (생성하는데 시간이 좀 걸립니다. 저는 5분 이상 걸렸어요) 공개 IP 구성 및 클라이언트 연결 1) 화면 왼측 메뉴 -> SQL -> 연결 -> 네트워킹 -> 네트워크 추가 -> 0.0.0.0/0(전체 허용) 저는 DB 개발 툴로 Datagrip을 사용합니다. Datagrip은 DB 개발과 관리를 ..
![[GCP] 구글 클라우드 플랫폼을 이용한 웹 서버 구축](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKULtm%2FbtsC8SJQ7uz%2FooL1ytVMZFLx78PRunDKyk%2Fimg.png)
저는 현재 GDSC Seoultech 소속으로 이번에 구글에서 주관하는 솔루션 챌린지(https://www.gdschongik.com/solution-challenge)에 참가하게 되었습니다. 구글에서 주관하는 만큼 구글 기술을 최대한 많이 사용하여 프로젝트를 진행하고자 합니다. 그 첫 번째가 구글 클라우드 플랫폼입니다. GCP 접속 및 로그인 클라우드 컴퓨팅 서비스 | Google Cloud 데이터 관리, 하이브리드 및 멀티 클라우드, AI와 머신러닝 등 Google의 클라우드 컴퓨팅 서비스로 비즈니스 당면 과제를 해결하세요. cloud.google.com 위의 사이트에 접속하여 무료로 시작하기 클릭 후 주소와 카드번호를 입력하여 가입해 줍니다. 12개월간 300$의 금액으로 무료 이용이 가능합니다. ..