33일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 회고79. 카펫 : https://school.programmers.co.kr/learn/courses/30/lessons/42842 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr -풀이과정class Solution { public int[] solution(int brown, int yellow) { int[] answer = new int[2]; for(int i=3;i=i){ if ((i - 2) * (width - 2) == yellow) { ans..
31일차 - Spring강의(Entity 연관 관계)
·
Java & Spring/Spring
□ 1 대 1 관계(@OneToOne)▷ 단방향 관계외래 키 주인 정하기 : 1대1 관계에서는 외래 키 주인을 직접 지정해야한다.외래 키의 주인만 외래 키를 등록, 수정, 삭제 할 수 있다.주인이 아닌 쪽은 읽기만 가능하다.- 음식 Entity가 외래 키의 주인인 경우- 음식 Entity 코드코드 보기@Entity@Table(name = "food")public class Food { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private double price; @OneToOne @JoinColumn(name = "user_id") p..
[TIL](2024)08.26 ~ 08.30
·
Java & Spring/TIL
08월 26일 (월)- 오늘 한 일프로그래머스 코딩테스트 1문제 진행 및 회고Spring 숙련주차 개인과제 시작08월 27일 (화)- 오늘 한 일Spring 숙련주차 개인과제Entity 연관 관계08월 28일 (수)- 오늘 한 일Spring 숙련주차 개인과제 JPA를 활용헌 CRUD구현- 회고CRUD구현이 아직 낯설다고 느껴진다.08월 29일 (목)- 오늘 한 일프로그래머스 코딩테스트 1문제 진행 및 회고08월 30일 (금)- 오늘 한 일프로그래머스 코딩테스트 1문제 진행 및 회고과제 복습 진행
31일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 회고78. 피보나치 수 : https://school.programmers.co.kr/learn/courses/30/lessons/12945 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이 과정코드 보기class Solution { public int solution(int n) { int f0 = 0; int f1 = 1; int answer = 0; int i = 2; while(i 처음 수 fo, 두번째 수 f1 변수 선언 및 초기화i = 2부터 n까지 반복문 진행구하는 값은 ..
29일차 - Spring강의(인증과 인가)
·
Java & Spring/Spring
□ 인증과 인과인증(Authenication)해당 유저가 실제 유저인지 인증하는 개념지문인식, 로그인 등인가(Authorization)해당 유저가 특정 리소스에 접근이 가능한지 허가를 확인하는 개념관리자 페이지, 관리자 권한 등서버와 클라이언트는 http라는 프로토콜을 이용하여 통신하는데 그 통신은 비연결성(Connectionless) 무상태(Stateless)로이루어진다.비연결성(Connectionless) : 서버와 클라이언트가 연결되어 있지 않다는 것, 이유는 리소스 절약을 위해서무상태(Stateless) : 서버가 클라이언트의 상태를 저장하지 않는다는 것□ 인증의 방식쿠키-세션 방식쿠키 : 클라이언트에 저장될 목저으로 생성한 정보를 담은 파일세션서버에서 일정시간동안 클라이언트 상태를 유지하기 위해..
29일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 회고77. 이진 변환 반복하기 : https://school.programmers.co.kr/learn/courses/30/lessons/70129 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이 과정코드 보기회차를 위한 변수 i, 제거된 0의 개수를 카운팅하기위한 변수 remove, 최초 s문자열의 길이 변수 n 선언while문을 통해 s가 "1"이 될 때 까지 반복s.replaceAll()을 통해 0제거최초 s의 길이인 n에서 변경된 문자열 s의 길이를 뺀(이번 회차 제거된 0의 개수) 값을 remove에 더해준다.숫자를 이진법으로 바꿔주는 to..
28일차 - Spring강의(Bean 수동 등록, Type중복 시 Bean 주입)
·
Java & Spring/Spring
□ Bean 수동 등록@Component를 사용하면 자동으로 해당 클래스를 Bean으로 등록해줌기술적인 문제나 공통적인 관심사를 처리할 때 사용하는 객체들을 수동으로 등록공통 로그처리와 같은 비즈니스 로직을 지원하기 위한 부가적이고 공통적인 기능들을 '기술지원 Bean'이라 부르고 수동등록 함수동 등록된 Bean에서 문제가 발생 했을 때 해당 위치를 파악하기 쉬운 장점이있음@Configurationpublic class PasswordConfig { @Bean public PasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); }}Bean으로 등록하고자 하는 객체를 반환하는 메서드를 선언그 매서드 위에 ..
27일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 회고76. JadenCase 문자열 만들기 : https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이 과정코드 보기import java.util.*;class Solution { public String solution(String s) { String lowString = s.toLowerCase(); lowString = lowString.replaceAll(" ", ", "); StringBuil..
26일차 - SQL 코드카타
·
Java & Spring/코딩테스트
- 회고1. 이름이 있는 동물의 아이디 : https://school.programmers.co.kr/learn/courses/30/lessons/594072. 역순 정렬하기 : https://school.programmers.co.kr/learn/courses/30/lessons/590353. 중복 제거허기 : https://school.programmers.co.kr/learn/courses/30/lessons/594084. 동물의 아이디와 이름 : https://school.programmers.co.kr/learn/courses/30/lessons/594035. 동물 수 구하기 : https://school.programmers.co.kr/learn/courses/30/lessons/594066...
26일차 - 알고리즘 코드카타
·
Java & Spring/코딩테스트
- 회고75. 최댓값과 최솟값 : https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr- 풀이 과정코드 보기class Solution { public String solution(String s) { int min = Integer.MAX_VALUE; int max = Integer.MIN_VALUE; String[] sArr = s.split(" "); for (String a : sArr) { ..