분류 전체보기
스프링 컨테이너
1. 스프링 컨테이너의 생성 // 스프링 컨테이너 생성 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); 위의 코드에서 ApplicationContext는 스프링 컨테이너이자 인터페이스이다. 스프링 컨테이너는 XML 기반으로 만들 수 있고 어노테이션 기반의 자바 설정 클래스로도 만들 수 있다. 파라미터를 통해 구성 정보를 지정하고 파라미터의 자바 설정 클래스를 기반으로 스프링 빈을 등록한다. 이때, 기본적으로 빈의 이름은 메소드 이름을 사용하며 빈 이름을 직접 부여할 수도 있다. 그러나 빈의 이름은 항상 다른 이름을 부여해야 하며 같은 이름을 부여하면 다른 빈이 무시되거나 기존 빈을..
IoC, DI 그리고 Container
1. 제어의 역전(Inversion of Control) IoC ? 프로그램의 제어 흐름을 클라이언트 구현 객체가 제어하지 않고 외부의 구성 영역에서 가져가는 것을 제어의 역전이라고 한다. 기존 프로그램들은 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고 연결하고 실행되어 구현 객체가 프로그램의 제어 흐름을 스스로 조종했다. AppConfig의 등장으로 구현 객체는 자신의 로직을 실행하는 역할만 담당하며 프로그램 흐름 제어는 이제 AppConfig가 가져간다. 따라서 ~ServiceImpl은 필요한 인터페이스들을 호출하지만 어떤 구현 객체들이 실행될지는 알 수 없다. 프로그램에 대한 제어 흐름에 대한 권한은 모두 AppConfig가 가지고 있고 구현체 역시 AppConfig가 생성한다. ..
2022 KAKAO BLIND RECRUITMENT - 주차 요금 계산 (JAVA)
❓ 문제 - 2022 KAKAO BLIND RECRUITMENT 주차 요금 계산 - JAVA 풀이법 출처 (https://programmers.co.kr/learn/courses/30/lessons/92341) 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 📝 문제해결법 1. HashMap + 구현을 통해 문제를 해결하였다. ino..
2022 KAKAO BLIND RECRUITMENT - k진수에서 소수 개수 구하기 (JAVA)
❓ 문제 - 2022 KAKAO BLIND RECRUITMENT k진수에서 소수 개수 구하기 - JAVA 풀이법 출처 (https://programmers.co.kr/learn/courses/30/lessons/92335) 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 📝 문제해결법 1. 구현을 통해 문제를 해결하였다. 10진수 -> k진수로 변경은 String.valueof(바꾸려는 숫자(10진수), 바꾸려는 k진법) 로 간단하게 구현가능하다. k진수에서..