[TIL 2024/09/10] 프로그래머스 카드뭉치
·
TIL
https://school.programmers.co.kr/learn/courses/30/lessons/159994 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr class Solution { public String solution(String[] cards1, String[] cards2, String[] goal) { int x = 0; int y = 0; for(int i = 0; i
[TIL 2024/09/09] 스프링부트 AOP 사용해보기
·
TIL
이전 프로젝트와 동일한 요구사항인 페이지 제한에 대하여 이번엔 AOP를 사용하여 관리를 하도록 한다.이전에는 컨트롤러마다 검증로직을 추가하다 보니 중복되는 코드가 불필요하게 많아짐을 느꼈었는데프로젝트 후반부였어서, 그리고 리팩토링 할 생각을 미처 하지 못했던 거 같다. 이번엔 처음부터 AOP로 관리하고자 한다!import java.util.Arrays;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lang.annotation.Aspect;import org.springframework.data.domain.PageRequest;import org.springfram..
[TIL 2024/09/06] MSA 프로젝트 초기설정
·
TIL
유레카 서버 (Eureka-Server)  build.gradledependencies { implementation 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-server' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher'} EurekaServerApplication.java@EnableEurekaServer@SpringBootApplicationpublic class EurekaServerApplication { public static void m..
[TIL 2024/09/05] 프로그래머스 명예의 전당(1)
·
TIL
https://school.programmers.co.kr/learn/courses/30/lessons/138477 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr import java.util.PriorityQueue;class Solution { public int[] solution(int k, int[] score) { int[] answer = new int[score.length]; PriorityQueue pq = new PriorityQueue(); for(int i = 0; i k){ ..
[TIL 2024/09/04] 깃허브(GitHub) 사용법 & 협업방법
·
TIL
Git 특강 내용 정리💫 Git은 코드 변경점 기록(버전관리도구)이다.다시 말해, 소프트웨어의 변경사항을 체계적으로 추적학 통제하는 것을 말한다. GitHub은 백업과 공유가 가능한 저장소이다.온라인 백업, 공유, 협업도구로 쓰인다. git init프로젝트 시작 전 닥 한 번만 입력하면 됨(여러 번 입력해도 문제되진 않음)정확한 프로젝트 폴더(경로)에서 입력해야 함.git이라는 폴더가 생긴다. 이때부터 코드 변경을 git에서 추적한다. git add 파일명저장하기 전 저장할 파일 지정git add . 은 현재 경로의 모든 변경된 사항을 add한다.Working directory에서 Staging Area로 이동 git commit -m "메세지 작성"이때 커밋메세지는 내가 무슨 코드를 짰는지 자세히 ..
[TIL 2024/09/03] Postman API 자동화 테스트
·
TIL
프로젝트 발표회 & 튜터님의 피드백으로 postman으로 api 자동화 테스트를 진행하였다. 1. 팀원들과 함께 사용할 워크스페이스를 생성하고 팀원들을 초대한다. 2. 팀원들과 함께 사용할 변수를 모아둘 Environments를 생성한다.3. 방금 생성한 Environments를 적용해 준다. 4. 적용한 Environmet에서 변수를 생성해 api 테스트에서 사용할 수 있다. 3번에서 {{url}}처럼 사용 가능하다. 5. 스크립트 문에 요청 성공 시 반환값을 환경변수에 저장한다.pm.test("SUCCESS", function() { //HTTP STATUS CODE 200일 때 실행. pm.response.to.have.status(200); console.log(pm.respons..
[TIL 2024/09/02] Docker EC2 실행 방법
·
TIL
DockerfileFROM openjdk:17-jdk-slim# JAR 파일을 빌드된 애플리케이션으로 설정ARG JAR_FILE=build/libs/*.jar# JAR 파일을 이미지에 복사COPY ${JAR_FILE} /app.jar# 애플리케이션을 실행할 명령어 설정ENTRYPOINT ["java", "-Dspring.profiles.active=prod", "-jar", "/app.jar"] docker compose 파일 없을 때도커 이미지 생성 docker build -t [이미지 태그명] .# 기본 커맨드# -d: detach mode (백그라운드로 실행됨)# -p: 호스트에 연결된 컨테이너의 특정 포트를 외부에 노출하기 위해 사용# docker run -d -p [호스트 port]:[컨테이너 ..
[TIL] 2024/08/30
·
TIL
1. jpa에서 setter를 지양하는 이유 - ??추가할 예정 2.특정 날짜의 요일 구하기LocalDateTime date = LocalDateTime.now();DayOfWeek dayOfWeek = date.getDayOfWeek();if(store.getClosedDays().equals(dayOfWeek.getDisplayName(TextStyle.FULL, Locale.KOREAN))){ throw new ApplicationException(CLOSED_DAY_STORE);} 3. git 강제 pullgit fetch --allgit reset --hard origin/mastergit pull origin master 4. jpa pageable 사이즈 제한 private static..
[TIL] 2024/08/29
·
TIL
1. delete문 실행 시 @SQLDelete 어노테이션 사용하여 soft delete@Where 어노테이션 사용하여 모든 조회 과정에서 deleted_at 이 null인 값만 가져오기// Delete의 값이 null인 정보만 가져옴@Where(clause = "deleted_at is NULL")// Delete 쿼리문이 동작될때, 실제로는 Delete쿼리문이 가지않고 아래의 쿼리문이 동작함@SQLDelete(sql = "UPDATE p_store SET deleted_at = current_timestamp WHERE id = ?") 2. patch 수정 시 필드를 보내지않을 경우 null값 들어가는 문제 발생하여  jsonnullable을 찾아보았다.https://hyeri0903.tistory...
[TIL] 2024/08/28
·
TIL
1. org.hibernate.TransientPropertyValueException: object references an unsaved transient instance - save the transient instance before flushing : com.sparta.aibusinessproject.domain.Payment.user -> com.sparta.aibusinessproject.domain.User 왼쪽이 User의 자식 객체인 Payment오른쪽이 User 객체 User 테이블에 데이터 없는 상태인데 자식객체에서 save 해서 에러남=> User 테이블에 더미 데이터 생성 후 해결  2. @JoinColumn name 속성은 부모엔티티이름_부모엔티티의Pk값 인데user_user..