삽질 개 오지게하고 결국엔 해결한 방법입니다.암튼 이런 오류였다. 구글링을 하니까이렇게 하면 해결된다고 한다.근데 난 안됨.MySQL Server에 접속합니다. 근데 저는 이 방법을 cmd로 하는 방법을 몰랐는데 이번에 익힘cmd 창에 MySQL Server가 있는 디
yml 파일에 flyway의 username을 user로 바꾸니까 되었다.야물~야물~
데이터베이스 보안은 모든 웹 애플리케이션 및 서비스에서 중요한 측면 중 하나입니다. 특히 AWS(Amazon Web Services)와 같은 클라우드 환경에서는 보안 그룹을 사용하여 DB에 대한 접근을 효과적으로 관리할 수 있습니다. 이 글에서는 AWS 보안 그룹을 활
DB, IP, AWS, 보안 그룹, 인바운드 규칙, ssh 등의 개념을 간략히 정리한 내용을 아래에 제공합니다.데이터베이스(DB)는 데이터를 구조적으로 저장, 관리, 검색, 업데이트하는 시스템입니다. 주로 웹 애플리케이션, 소프트웨어 및 서비스에서 사용되며, 다양한 형
데이터베이스(DB)에 안전하게 접근하려면 적절한 접속 계정 권한을 설정해야 합니다. 이 글에서는 개발용 DB에 접근할 때 필요한 권한 설정 과정을 안내합니다.먼저, 터미널을 열어 개발용 서버에 접속하세요. 이를 위해 SSH 키 파일을 사용하여 터미널에서 원격으로 서버에
코드를 작성할 때 자주 사용되는 요소 중 두 가지가 있습니다. 바로 "어노테이션(Annotations)"과 "접근 제한자(Access Modifiers)"입니다. 이 두 가지는 코드의 가독성, 재사용성, 보안 등을 개선하는 데 중요한 역할을 합니다. 이번 글에서는 어노
객체 지향 프로그래밍(OOP)은 모델링과 코드 구조화를 향상시키며 소프트웨어 개발을 더 효과적으로 만들어 주는 강력한 개념입니다. 이러한 OOP 개념 중에서도 래퍼 클래스(Wrapper Class)와 기본 데이터 타입을 어떻게 사용하는지에 대해 알아보겠습니다.1\. 래
데이터베이스에서 랜덤한 데이터를 조회하고, 그 중에서도 자기 자신을 제외하는 로직을 구현해야 할 때, 이를 어떻게 가장 효율적으로 처리할 수 있을까요? 서비스 단에서 구현하는 것이 아닌 레포지토리 단에서 해당 로직을 처리하는 것이 효율적인 이유에 대해 알아봅시다.데이터
데이터베이스에서 카테고리를 문자열로 저장하는 경우, 특정 쿼리나 데이터베이스 함수 사용 시 문제가 발생할 수 있습니다. 이 글에서는 실제로 발생한 문제와 그 해결 방법을 공유하고자 합니다.저희 프로젝트에서는 레슨 카테고리를 데이터베이스에 문자열로 저장하고 있었습니다.
데이터베이스에서 카테고리를 문자열로 저장하는 경우, 특정 쿼리나 데이터베이스 함수 사용 시 문제가 발생할 수 있습니다. 이 글에서는 실제로 발생한 문제와 그 해결 방법을 공유하고자 합니다.저희 프로젝트에서는 레슨 카테고리를 데이터베이스에 문자열로 저장하고 있었습니다.
데이터베이스에서 카테고리를 문자열로 저장하는 경우, 특정 쿼리나 데이터베이스 함수 사용 시 문제가 발생할 수 있습니다. 이 글에서는 실제로 발생한 문제와 그 해결 방법을 공유하고자 합니다.저희 프로젝트에서는 레슨 카테고리를 데이터베이스에 문자열로 저장하고 있었습니다.
HTTP 상태 코드는 웹 서버가 클라이언트로부터 받은 요청의 결과를 나타내는 3자리 숫자로 이루어진 코드입니다. 이 코드들은 웹 서버와 클라이언트 간의 통신에서 어떤 일이 발생했는지를 간결하게 표현하며, 요청이 성공했는지, 실패했는지, 그 이유가 무엇인지 등을 전달합니
트랜잭션(Transaction)은 데이터베이스와 관련된 작업을 일관성 있게 처리하기 위한 개념입니다. 데이터베이스에서는 여러 개의 작업(예: 데이터 읽기, 쓰기, 업데이트)이 수행될 때 데이터의 일관성을 보장하기 위해 트랜잭션을 사용합니다. 트랜잭션은 "원자성(Atom
@RequestParam을 사용하여 HTTP 요청의 파라미터 값을 컨트롤러 메소드의 매개변수로 받을 때, 요청 파라미터의 값은 기본적으로 문자열(String) 형태로 전달됩니다. 이때, Enum 형식의 값을 필요로 하는 경우, Spring은 문자열로 전달된 파라미터 값
객체 지향 프로그래밍(OOP)은 소프트웨어 개발의 중요한 패러다임 중 하나로, 현실 세계의 개념을 추상화하고 모델링하는 데 주로 사용됩니다. 이러한 모델링은 클래스, 필드, 메서드 등의 멤버로 구현되며, 이러한 멤버에 대한 접근을 제어하는 것이 접근 제어자의 역할입니다
제가 짠 쿼리 입니다. 같은 카테고리에 자기 자신을 제외한 무작위로 3개의 레슨을 뽑는 경우를 쿼리문을 날려 디비에서 가져왔습니다.이 쿼리는 특정 카테고리(category)에 속하면서 현재 레슨(id)을 제외한 모든 레슨 중에서 무작위로 3개를 선택합니다.?1 ?2는
커서 기반 페이지네이션(cursor-based pagination)은 데이터베이스에서 대량의 데이터를 효과적으로 페이징하는 기술 중 하나입니다. 이 기술은 무한 스크롤과 같은 사용자 경험을 구현하는 데 유용합니다. 커서 기반 페이지네이션은 다음과 같이 작동합니다:데이터
내가 작업하는 개발물에 대해 시니어 개발자 분이 리뷰를 달아주셨다. 너무나도 감사하다.다음과 같은 사항이었다. 나도 피드백을 받은 즉시 공부해서 벨로그에 업로드 하여서 내용이 남아있지만 한번에 한번 더 정리하고 싶어서 로그를 남긴다.변수를 굳이 만들지 않고 if 절을
도입 상황 원래 개발 완료 후, 수동으로 서버에 배포하였다. 다음 흐름으로 진행하였다. 아래 명령어를 통해 현재 실행중인 java process를 종료합니다. ps aux | grep java 로 현재 실행중인 pid를 얻어온 다음 kill -9 ${pid} 로
나는 스타트업에서 근무하는 백엔드 개발자이다.오늘은 단일 기능을 개발하고, 클라이언트가 바로 바로 테스트할 수 있게 테스트용 브런치 별로 배포를 진행하려고 한다.(클라이언트의 요청 사항이었다.)CI/CD 구축하는 것도 작성하고 있지만 오늘은 수동 배포를 하는 방법을 작
문제: ./gradlew build 시 gradlew: permission denied 오류 발생해결 방법:문제 원인 분석: 'Permission Denied' 오류는 실행 파일에 실행 권한이 없어서 발생합니다.권한 설정:chmod 명령어: chmod +x ./grad
시간 없응께 간단히만 작성해보겟수다AWS에 접속하여, 운영DB 보안그룹 인바운드 규칙 편집인바운드 규칙 편집하기내 로컬 IP 주소 추가해준다 1) SSH 2) MYSQL/Aurora규칙 저장ssh로 접속하여 DB계정 권한 수정 1) 키 파일 이용해 터미널 접속
URL은 "Uniform Resource Locator"의 약자로, 인터넷 상의 자원을 가리키는 주소입니다. 이는 웹페이지, 이미지, 동영상 등과 같은 온라인 자원의 위치를 식별합니다.UriComponentsBuilder는 Spring 프레임워크에서 제공하는 클래스로,
RestTemplate은 Spring 프레임워크에서 제공하는 HTTP 통신을 위한 강력한 클라이언트입니다. RESTful 웹 서비스에 HTTP 요청을 보내고 응답을 받기 위한 다양한 기능을 제공합니다.주로 다음과 같은 기능을 수행합니다.HTTP 요청 보내기 : GET,
이어서 구현한 것이다.Front는 플러터로 이미 구현이 되어 있고, 나는 토큰을 이용해 알림을 전송하는 로직을 작성하고 푸시를 보내면 된다.여기에서 나는 백엔드 개발 서버입장을 구현하면 된다. 헷갈리지 말아야 할 것은 FCM 백엔드가 아닌 자체 앱 서버이다.그러니까,
어플에는 다양한 기능이 있다. 그 중에서도 어플 활성화를 위한 필수요소인 알림을 FCM으로 구현하려고 한다. FCM 아키텍처 개요 FCM 이란? Firebase Cloud Messaging(Firebase 클라우드 메시징)은 Google의 푸시 알림 서비스입니다.
서문: 이번 글에서는 무작위로 추천되는 레슨을 가져오는 코드를 리팩토링하는 과정을 소개하려 합니다. 주어진 코드는 중복이 많았고 가독성이 떨어져 유지보수가 어려웠습니다. 이를 개선하여 효율적이고 유연한 코드로 변경해보겠습니다. 코드 리팩토링 전: 문제점: 중복 코