본문 바로가기

728x90
반응형

Major-

(863)
[Spring 부트 - 영화 리뷰 프로젝트] 1. M:N (다대다) 관계 설계와 구현 [+ N+1 문제와 엔티티의 특정 속성 로딩 방법] 목차 데이터베이스의 관계 엔티티 관계 M:N 관계의 특징 매핑 테이블의 특징 JPA의 연관관계 설정과 처리 JPA에서 M:N 다대다 처리 방식 @ManyToMany를 이용한 처리의 문제 연관관계가 있는 엔티티의 DTO 처리 엔티티 클래스 설계 REST방식의 데이터 처리 엔티티 관계 영화와 회원 엔티티 회원이 영화에 대한 평점과 감상을 기록 한 편의 영화에 여러 회원의 평가 한 명의 회원은 여러 영화에 평점 게시물과 댓글의 경우엔, 하나의 댓글은 하나의 게시물에만 속하지만 영화와 회원은 각각 독립적인 존재 M:N 관계의 특징 논리적 설계와 실제 테이블 설계가 다르다. 개념적으로 다대다를 사용하지만, 실제 테이블 설계에서는 불가능하다. 테이블 구조의 RDBMS에서는, 칼럼을 지정할 때 크기를 지정 따라서, ..
[SQL] 프로그래머스 SQL -- 코드를 입력하세요 -- 리뷰를 가장 많이 작성한 회원의 리뷰를 조회하는 SQL -- 회원 이름, 리뷰 텍스트, 리뷰 작성일 출력하는데 리뷰 작성일 기준 오름차순 SELECT MEMBER_NAME, REVIEW_TEXT,TO_CHAR(REVIEW_DATE,'yyyy-mm-dd') FROM MEMBER_PROFILE MP, rest_review r where MP.MEMBER_ID=r.MEMBER_ID and r.member_ID IN(select member_id from REST_REVIEW group by member_id having count(member_id) =(select max(mycount) from (select member_id, count(member_id) mycount fro..
[Java] 1. 알고리즘 다시풀기 https://and-some.tistory.com/631 [Ch.07 - Recursive] 04. 피보나치 수열 (+메모이제이션) 4. 피보나치 수열 설명 1) 피보나키 수열을 출력한다. 피보나치 수열이란 앞의 2개의 수를 합하여 다음 숫자가 되는 수열이다. 2) 입력은 피보나치 수열의 총 항의 수 이다. 만약 7이 입력되면 1 1 2 and-some.tistory.com https://and-some.tistory.com/533?category=836999 [Ch.02 - Array] 05. 소수(에라토스테네스 체) # 5. 소수(에라토스테네스 체) 설명 자연수 N이 입력되면 1부터 N까지의 소수의 개수를 출력하는 프로그램을 작성하세요. 만약 20이 입력되면 1부터 20까지의 소수는 2, 3, 5,..
자바의 디자인 패턴 1. 디자인 패턴이 무엇인가요? 리팩토링은? 2. 객체를 생성하는 패턴들 Factory Method - 팩토리를 활용한 객체 생성과 리팩토링 Abstract Factory - 팩토리를 선택하여 인스턴스의 세트를 만들자 Singleton - 단 하나의 인스턴스만을 생성하기 3. 알고리즘 뼈대나 기능과 구현을 분리하여 좀더 유연하게 만들기 Strategy - 정책이나 알고리즘을 분리하고 필요에 따라 추가 대체할 수 있도록 함 Bridge - 기능이 선언된 부분과 이에 대한 다양한 구현부를 분리하고 bridge를 통해 연결함 Template Method - 고정된 흐름은 Template으로 정의하고 그 내부에 다양하게 구현될 수 있는 메서드들은 서브클래스에서 구현 4. 동일시하기 Decorator - 다양한 ..
[Java 알고리즘] (6) 스트림의 최종 연산 최종연산의 종류 1. 최종연산 2. collect() 3. reduce() 4. groupingBy(), partitioningBy() Optional와 OptionalInt T타입의 객체를 감싸는 래퍼클래스 : Optional객체에 모든 타입의 참조변수를 담아서 반환 Optional 메서드를 통해 null체크가 가능하다. Optional 객체 생성 of(); ofnullable(); : 널로 객체 생성 가능 empty() : 빈 객체로 초기화 가능 Optional 객체의 값 가져오기 get(); orElse(""); : null일 경우 기본값 설정가능 orElseGet() orElseGet(String::new) :null일때 대체값 반환 orElseThrow() orElseThrow(NullPoint..
[Java 알고리즘] (5) 스트림 생성과 중간연산 1. Function과 Predicate 2. 정렬과 IntStream의 수학 메서드 3.map()을 통한 다양한 변환 4. 스트림의 스트림 -> 스트림으로 변환 1. Function과 Predicate package lamdaAndstream; import java.util.function.*; import java.util.*; class FunctionAndPredicate { public static void main(String[] args) { Supplier x = ()-> (int)(Math.random()*100)+1; Consumer c = i -> System.out.print(i+", "); Predicate z = i -> i%2==0; Function k = i -> i/10*1..
[Java 알고리즘] (2) 해시, BFS/DFS, Stack, DP 1. 위장 - 해시 [키와 값을 이용한 자료구조] 2. 게임 맵 최단거리 - BFS/DFS [너비우선탐색/깊이우선탐색] 3. 올바른 괄호의 개수 - Stack 4. 정수 삼각형 - DP [동적 프로그래밍] 1. 위장 - 해시 : 키와 값을 이용한 자료구조로, 검색에 특화된 자료구조이다. https://school.programmers.co.kr/learn/courses/30/lessons/42578 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 조건 1. 종류별로 존재하는 위장 용품 2. 착용할 수도 있고, 착용안할 수도 있는 위장 용품 3. 전체 조합의..
[Java 알고리즘] (1) 그리디, 정렬, 이분탐색, 시뮬레이션 ## 1. 기지국 설치 - 그리디 2. 가장 큰 수- 정렬 3. 예산 - 이분 탐색 4. 숫자 게임 - 시뮬레이션 1. 기지국 설치 - 그리디 https://school.programmers.co.kr/learn/courses/30/lessons/12979?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr class Solution { //문제 풀이 순서 //1. 순회하면서 전파 범위를 확인한다. //2. 전파 없으면 기지국 설치 -> 전파 범위 최대로 이동 //3. 전파 범위 끝나는 지점 이후부터, 시작 //4. 전파 범위 겹치면 전파 ..

728x90
반응형