전체 κΈ€

    7. CI/CD κ³„νš

    λ¦¬νŒ©ν† λ§μ΄ 30%정도 남은 μ‹œμ μ—μ„œ μžλ™ν™” 배포λ₯Ό κ³„νšν•˜κ³ μžν•©λ‹ˆλ‹€! μš°μ„  μ²˜μŒν•΄λ΄μ„œ κ²€μƒ‰μœΌλ‘œ μ°Ύμ•„λ‚Έ 방법을 μ‹€ν–‰ν•œ ν›„ 방식을 μ΄ν•΄ν•˜κ³  λ‹€λ₯Έκ±Έλ‘œ λ°”κΏ”λ³Ό μ˜ˆμ •μž…λ‹ˆλ‹€. 제일 많이 λ“€μ–΄λ΄€λ˜ Jenkins, Dockerλ₯Ό μ‚¬μš©ν•  μ˜ˆμ •μž…λ‹ˆλ‹€. 1. GitHub Push. 2. GitHubμ—μ„œ Jenkins에 Build μœ λ°œν•œλ‹€. 3. Jenkinsμ—μ„œ Gradle Buildν•˜μ—¬ Jar 파일 생성 ν•œλ‹€. 4. μƒμ„ λœ Jar νŒŒμΌμ„ build ν•œλ‹€. 5. DocerHub에 Push ν•œλ‹€. 6. Jenkins κ°€ DockerHub에 μžˆλŠ” νŒŒμΌμ„ pull ν•œλ‹€. 7. 이전 μ»¨ν…Œμ΄λ„ˆ μ‚­μ œ ν›„ μƒˆλ‘œ λ°›μ•„μ˜¨ 이미지λ₯Ό μ‹€ν–‰ν•œλ‹€. https://velog.io/@haeny01/AWS-Jenkins%EB%A5%BC-%ED%99%9..

    6. 무엇이 문제일까 ...

    Test 도쀑 μ΄μƒν•˜κ²Œ ResponseFiledsλ₯Ό 받지 λͺ»ν•˜λŠ” λ¬Έμ œκ°€ μžˆλ‹€. ν˜Ήμ‹œλ‚˜ ν•΄μ„œ postman으둜 ν…ŒμŠ€νŠΈ ν•΄λ³΄μ•˜λŠ”λ° μ•„λž˜μ™€ 같이 μž˜λ‚˜μ˜¨λ‹€ ... ν…ŒμŠ€νŠΈλŠ” μ„±κ³΅ν•˜μ§€λ§Œ responseFields κ°€ μ—†λ‹€λ©° κ³„μ†ν•΄μ„œ 였λ₯˜λ₯Ό λ±‰λŠ”λ‹€ ... γ…œγ…œ 무엇이 문제일까 @Test void loginUser() throws Exception { final UserLoginRequest userLoginRequest = UserLoginRequest.builder().socialToken("Asd823daz").pushToken("Wesdf0898dfa").build(); final UserLoginResponse userLoginResponse = UserLoginResponse.builder().coupleT..

    5. Spring REST Docs μ‚¬μš©

    μ„œλΉ„μŠ€ κ΅¬ν˜„μ— μ•žμ„œ REST API λ¬Έμ„œλ₯Ό μžλ™ν™” ν•΄μ£ΌλŠ” Spring REST Docs λ₯Ό μ‚¬μš©ν•΄λ³Έλ‹€. Docsλ₯Ό μ‚¬μš©ν•œ μ΄μœ λŠ” Testμ—μ„œ μ„±κ³΅ν•΄μ•Όλ§Œ λ¬Έμ„œλ₯Ό λ§Œλ“€ 수 있기 λ•Œλ¬Έμ— μ‚¬μš©ν•˜κ²Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ°•μ œλ‘œ TEST CODEλ₯Ό μž‘μ„±ν•˜μ—¬ API에 λŒ€ν•œ 신뒰성을 높일 수 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€. Gradle 7을 μ‚¬μš©ν•˜κ³  μžˆμ—ˆλŠ”λ° λ¬Έμ„œμƒμ„±μ΄ μ•ˆλ˜μ„œ 검색해봀닀. μš°νšŒλ°©λ²•μ΄ μžˆμ§€λ§Œ λ³΅μž‘ν•˜κΈ° λ•Œλ¬Έμ— λ‹€μš΄κ·Έλ ˆμ΄λ“œλ₯Ό μ„ νƒν–ˆλ‹€. 그리고 Gradleκ³Ό Maven μ—μ„œ λ‹€λ₯΄κ²Œ μ„€μ •λ˜λŠ” 뢀뢄이 있기 λ•Œλ¬Έμ— λ§¨μ•„λž˜ 링크λ₯Ό 톡해 ν™•μΈν•΄λ³΄λŠ” 것도 μ’‹λ‹€! ν™˜κ²½μ„€μ • Springboot 2.6.1 Gradle 6.9.1 JUnit5 Asciidoctor 1.5.9.2 build.gradle 에 μΆ”κ°€ν•œ μ„€μ • plugins { id "org.a..

    4. 연관관계 - OneToMany

    DiaryEntity package so.ego.re_darling.domains.diary; import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import so.ego.re_darling.domains.user.domain.Couple; import javax.persistence.*; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Collections; import java.util.LinkedList; import java.util.List; @Gette..

    3. 연관관계 - ManyToOne

    Coupon Entity package so.ego.re_darling.domains.coupon.domain; import lombok.*; import so.ego.re_darling.domains.user.domain.User; import javax.persistence.*; import java.time.LocalDateTime; @AllArgsConstructor(access = AccessLevel.PROTECTED) @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "coupon") @Entity public class Coupon { @Id @GeneratedValue(strategy = GenerationType.IDEN..

    2. Entity

    package so.ego.re_darling.domains.coupon.domain; import lombok.*; import javax.persistence.*; import java.time.LocalDateTime; @AllArgsConstructor(access = AccessLevel.PROTECTED) @NoArgsConstructor(access = AccessLevel.PROTECTED) @Table(name = "coupon") @Entity public class Coupon { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @NonNull private String title; private Str..

    11μ›” 26일 2문제 - Java : Two pointers

    1. 두 λ°°μ—΄ ν•©μΉ˜κΈ° 첫 번째 쀄에 첫 번째 λ°°μ—΄μ˜ 크기 N(1

    11μ›” 22일 1문제 - Java : Array

    1. λ©˜ν† λ§ ν˜„μˆ˜λ„€ 반 μ„ μƒλ‹˜μ€ 반 ν•™μƒλ“€μ˜ μˆ˜ν•™μ μˆ˜λ₯Ό ν–₯μƒμ‹œν‚€κΈ° μœ„ν•΄ λ©˜ν† λ§ μ‹œμŠ€ν…œμ„ λ§Œλ“€λ €κ³  ν•©λ‹ˆλ‹€. λ©˜ν† λ§μ€ λ©˜ν† (λ„μ™€μ£ΌλŠ” 학생)와 λ©˜ν‹°(도움을 λ°›λŠ” 학생)κ°€ ν•œ 짝이 λ˜μ–΄ λ©˜ν† κ°€ λ©˜ν‹°μ˜ μˆ˜ν•™κ³΅λΆ€λ₯Ό λ„μ™€μ£ΌλŠ” κ²ƒμž…λ‹ˆλ‹€. μ„ μƒλ‹˜μ€ M번의 μˆ˜ν•™ν…ŒμŠ€νŠΈ λ“±μˆ˜λ₯Ό 가지고 λ©˜ν† μ™€ λ©˜ν‹°λ₯Ό μ •ν•©λ‹ˆλ‹€. λ§Œμ•½ A학생이 λ©˜ν† μ΄κ³ , B학생이 λ©˜ν‹°κ°€ λ˜λŠ” 짝이 λ˜μ—ˆλ‹€λ©΄, A학생은 M번의 μˆ˜ν•™ν…ŒμŠ€νŠΈμ—μ„œ λͺ¨λ‘ B학생보닀 λ“±μˆ˜κ°€ μ•žμ„œμ•Ό ν•©λ‹ˆλ‹€. M번의 μˆ˜ν•™μ„±μ μ΄ 주어지면 λ©˜ν† μ™€ λ©˜ν‹°κ°€ λ˜λŠ” 짝을 λ§Œλ“€ 수 μžˆλŠ” κ²½μš°κ°€ 총 λͺ‡ 가지 인지 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ„Έμš”. 1. 1 번째 ,2 번째 for문은 λ©˜ν† λ§μ΄ λ˜λŠ” ν•™μƒμ˜ 수 만큼의 κ²½μš°μ˜μˆ˜μ— 따라 검색 ν•˜κΈ° μœ„ν•¨ 2. 3번째 for문은 κ·Έ 경우의 μˆ˜κ°€ test만큼 있기 λ•Œλ¬Έ 3...

    [ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ Lv.1] 둜또의 졜고 μˆœμœ„μ™€ μ΅œμ € μˆœμœ„

    https://programmers.co.kr/learn/courses/30/lessons/77484 μ½”λ”©ν…ŒμŠ€νŠΈ μ—°μŠ΅ - 둜또의 졜고 μˆœμœ„μ™€ μ΅œμ € μˆœμœ„ 둜또 6/45(μ΄ν•˜ '둜또'둜 ν‘œκΈ°)λŠ” 1λΆ€ν„° 45κΉŒμ§€μ˜ 숫자 쀑 6개λ₯Ό μ°μ–΄μ„œ λ§žνžˆλŠ” λŒ€ν‘œμ μΈ λ³΅κΆŒμž…λ‹ˆλ‹€. μ•„λž˜λŠ” 둜또의 μˆœμœ„λ₯Ό μ •ν•˜λŠ” λ°©μ‹μž…λ‹ˆλ‹€. 1 μˆœμœ„ 당첨 λ‚΄μš© 1 6개 λ²ˆν˜Έκ°€ λͺ¨λ‘ 일치 2 5개 번호 programmers.co.kr java class Solution { public int[] solution(int[] lottos, int[] win_nums) { int[] answer = new int[2]; // 1,2,3,4,5,6-7(낙첨) int[] level = {6,6,5,4,3,2,1}; int cnt = 0; int win_c..

    11μ›” 13일 1문제 - Java : Array

    1. μž„μ‹œλ°˜μž₯ μ •ν•˜κΈ° 김갑동 μ„ μƒλ‹˜μ€ μ˜¬ν•΄ 6ν•™λ…„ 1반 λ‹΄μž„μ„ 맑게 λ˜μ—ˆλ‹€. 김갑동 μ„ μƒλ‹˜μ€ μš°μ„  μž„μ‹œλ‘œ 반μž₯을 μ •ν•˜κ³  학생듀이 μ„œλ‘œ μΉœμˆ™ν•΄μ§„ 후에 μ •μ‹μœΌλ‘œ μ„ κ±°λ₯Ό 톡해 반μž₯을 μ„ μΆœν•˜λ €κ³  ν•œλ‹€. κ·ΈλŠ” 자기반 학생 μ€‘μ—μ„œ 1ν•™λ…„λΆ€ν„° 5ν•™λ…„κΉŒμ§€ μ§€λ‚΄μ˜€λ©΄μ„œ ν•œλ²ˆμ΄λΌλ„ 같은 λ°˜μ΄μ—ˆλ˜ μ‚¬λžŒμ΄ κ°€μž₯ λ§Žμ€ 학생을 μž„μ‹œ 반μž₯으둜 μ •ν•˜λ € ν•œλ‹€. κ·Έλž˜μ„œ 김갑동 μ„ μƒλ‹˜μ€ 각 학생듀이 1ν•™λ…„λΆ€ν„° 5ν•™λ…„κΉŒμ§€ λͺ‡ λ°˜μ— μ†ν–ˆμ—ˆλŠ”μ§€λ₯Ό λ‚˜νƒ€λ‚΄λŠ” ν‘œλ₯Ό λ§Œλ“€μ—ˆλ‹€. 예λ₯Ό λ“€μ–΄ 학생 μˆ˜κ°€ 5λͺ…일 λ•Œμ˜ ν‘œλ₯Ό μ‚΄νŽ΄λ³΄μž. μœ„ κ²½μš°μ— 4번 학생을 보면 3번 학생과 2ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆκ³ , 3번 학생 및 5번 학생과 3ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆμœΌλ©°, 2번 ν•™μƒκ³ΌλŠ” 4ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆμŒμ„ μ•Œ 수 μžˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ 이 ν•™κΈ‰μ—μ„œ 4번 학생과 ν•œλ²ˆμ΄λΌλ„ 같은..

    11μ›” 3일 1문제 - Java : Array

    1. λ΄‰μš°λ¦¬ 지도 정보가 N*N κ²©μžνŒμ— μ£Όμ–΄μ§‘λ‹ˆλ‹€. 각 κ²©μžμ—λŠ” κ·Έ μ§€μ—­μ˜ 높이가 μ“°μ—¬μžˆμŠ΅λ‹ˆλ‹€. 각 격자판의 숫자 쀑 μžμ‹ μ˜ μƒν•˜μ’Œμš° μˆ«μžλ³΄λ‹€ 큰 μˆ«μžλŠ” λ΄‰μš°λ¦¬ μ§€μ—­μž…λ‹ˆλ‹€. λ΄‰μš°λ¦¬ 지역이 λͺ‡ 개 μžˆλŠ” 지 μ•Œμ•„λ‚΄λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ„Έμš”. 격자의 κ°€μž₯μžλ¦¬λŠ” 0으둜 μ΄ˆκΈ°ν™” λ˜μ—ˆλ‹€κ³  κ°€μ •ν•œλ‹€. λ§Œμ•½ N=5 이고, 격자판의 μˆ«μžκ°€ λ‹€μŒκ³Ό κ°™λ‹€λ©΄ λ΄‰μš°λ¦¬μ˜ κ°œμˆ˜λŠ” 10κ°œμž…λ‹ˆλ‹€. 2차원 배열은 μ΅μˆ™ν•˜μ§€ μ•Šμ•„μ„œ λ°©ν–₯을 우째 for문에 담아야할지 감이 μ•ˆμ™€μ„œ κ°•μ˜λ₯Ό λ΄€λŠ”λ° 보톡 이런 λ¬Έμ œμ—μ„œλŠ” 배열에 λ°©ν–₯을 λ¨Όμ € λ‹΄μ•„ 두고 그걸둜 2쀑 for문을 λŒμ•„μ•Ό ν•œλ‹€κ³  ν•œλ‹€. import java.util.Scanner; public class Test02_10 { public int solution(int[][] numberA..

    10μ›” 29일 1문제 - Java : Array

    1. 격자판 μ΅œλŒ€ν•© 5*5 κ²©μžνŒμ— μ•„λž˜λ‘Έ 같이 μˆ«μžκ°€ μ ν˜€μžˆμŠ΅λ‹ˆλ‹€. N*N의 격자판이 주어지면 각 ν–‰μ˜ ν•©, 각 μ—΄μ˜ ν•©, 두 λŒ€κ°μ„ μ˜ ν•© 쀑 κ°€ μž₯ 큰 합을 좜λ ₯ν•©λ‹ˆλ‹€. import java.util.Scanner; public class Main { public int solution(int[][] numberArray, int number) { int result = 0; int x, y; for (int i = 0; i < number; i++) { x = y = 0; for (int j = 0; j < number; j++) { x += numberArray[i][j]; y += numberArray[j][i]; } result = Math.max(result, x); result = Math..