본문 바로가기

분류 전체보기94

[프로그래머스] SQL - 우유와 요거트가 담긴 장바구니 🤔🥛우유와 요거트가 담긴 장바구니 😀문제 문제 설명 CART_PRODUCTS 테이블은 장바구니에 담긴 상품 정보를 담은 테이블입니다. CART_PRODUCTS 테이블의 구조는 다음과 같으며, ID, CART_ID, NAME, PRICE는 각각 테이블의 아이디, 장바구니의 아이디, 상품 종류, 가격을 나타냅니다. NAME TYPE ID INT CART_ID INT NAME VARCHAR PRICE INT 데이터 분석 팀에서는 우유와 요거트를 동시에 구입한 장바구니가 있는지 알아보려 합니다. 우유와 요거트를 동시에 구입한 장바구니의 아이디를 조회하는 SQL 문을 작성해주세요. 이때 결과는 장바구니의 아이디 순으로 나와야 합니다. 예시 예를 들어 CART_PRODUCTS 테이블이 다음과 같다면 CART_PRO.. 2020. 5. 1.
[SpringBoot]Spring AOP와 프록시 패턴 Spring AOP(Aspect Oriented Programing), 프록시 패턴 관점 지향 프로그래밍 관심사를 중심으로 프로그래밍? 프로그래밍을 하다보면 공통적인 작업을 수행하는 코드들이 있다. 여러 메서드에 공통적으로 들어갈 수 있고 다른 클래스에서도 있을 수 있다. 예를들어 메서드의 성능을 측정하기 위한 코드가 그렇다. 메서드의 시작 부분에서 측정을 시작하고, 메서드가 끝난부분에서 측정을 멈춰 결과를 출력한다. 우리는 이런 공통적인 부분을 끄집어 내서 하나의 동작으로 만들고자 한다. 마치 Flowchart(일의 순서를 적은 차트)를 만드는 일과 비슷할 것이다. 🤔 AOP를 구현하는 방법에는 어떤것이 있을까? 컴파일 A라는 java 파일이 있다고 가정하자. 컴파일 과정을 거치게 되면서 class파일.. 2020. 5. 1.
[SpringBoot]Spring 의존성 주입 DI(Dependency Injection) 와 순환 참조 DI(Dependency Injection) 은 기본적으로 Bean 끼리만 가능하다. Spring 의존성 주입 DI(Dependency Injection) 와 순환 참조 Spring 4.3 이상 부터는, 어떠한 Class에 생성자가 1개 뿐이고 해당 생성자로 주입받는 Reference 변수들이 Bean으로 등록되어 있다면 그 Bean을 자동으로 주입한다. (@Autowried 생략 가능) No qualifying bean Error : Bean 주입에 실패했다는 에러 🤔 DI (Dependency Injection) 이란? 의존성 주입. 생성된 Bean을 객체에 넣어주는걸 의미한다. 보통 @Autowired를 통해 주입하지만 위에서 말한 특성을 이용해 생성자를 통해서도 주입이 가능하다. 만약 사용해야 하.. 2020. 5. 1.
[SpringBoot] IoC 컨테이너와 Bean Spring - IoC 컨테이너와 Bean 이전 포스팅에서는 IoC 가 어떤 것인지 알아보았다. 이번 포스팅에서는 IoC 컨테이너 가 무엇인지 알아보도록 하겠다. IoC(Inversion of Control) 컨테이너 빈(Bean) 을 만들고 엮어주며 제공해준다. 기본적으로 Bean들은 Singleton 으로 이루어져 있다. 멀티 스레드 상황에서 Singleton을 만드는것은 번거롭고 조심스러운 일이다. 하지만 IoC 컨테이너는 이를 관리해주기 때문에 손쉽게 Bean을 관리할 수 있다. Singleton scope의 객체는 사용할때마다 계속 생성해 주는것이 아닌 하나의 인스턴스를 Application 전반에 걸쳐 사용할 수 있다. ApplicationContext 를 이용해 모든 Bean들을 조회할 수 .. 2020. 5. 1.
[SpringBoot]Spring IoC(Inversion of Control) Spring IoC(Inversion of Control) 🤔 Inversion of Control : 제어권이 역전된 것. 일반적인 경우 : 내가 사용할 의존성은 내가 만든다 IoC : 내가 사용할 의존성을 대신 만들어 준다. 의존성을 관리하는게 자기 자신이 아니라 외부에 의해 주입이 되기 떄문에 Inversion of Control 이라고 라고 부른다. 의존성을 주입해 주는 일 : Dependency Injection 😀 일반적인 경우를 보자. // 일반적인 경우 public class TestClassController { public TestRespository testRespository; // 따로 초기화를 해주지 않음 public TestClassController(TestRespositor.. 2020. 5. 1.
Spring - JPA에서 Like 기능 수행하기. Spring - JPA에서 Like 기능 수행하기. JPA로 like 기능 수행하기 CollectionfindBySomthingIsContaining(String str) Maria 라는 이름이 있을때 aria라고 검색해도 참조가 가능하다. 우리가 알고 있는 sql 에서의 like를 활용한 것인데, SELECT * FROM Something WHERE firstName LIKE : firstName% 이렇식으로 하게 되면 앞부분만이 매칭이 되기 떄문에 aria로 검색했을때 Maria를 찾지 못한다. 따라서 % 위치를 조정해주어야 한다. SELECT * FROM Something WHERE firstName LIKE %: firstName 이런식으로 : 앞에 % 가 와야한다. 위와 같다. 자세한 내용은 S.. 2020. 5. 1.