MessageSource ApplicationContext에 있는 기능. 국제화 기능을 제공한다. ApplicatioEventPublisher ApplicationEvent를 상속받아서 사용하지만 스프링 4.2부터는 상속받지 않아도 이벤트를 사용할 수 있게 되었다. 사용예제 public class MyEvent { private Object source; private int data; public MyEvent(Object source,int data) { this.source=source; this.data=data; } public Object getSource(){ return source; } public int getData(){ return data; } } @Component public ..
원래라면 매일 매일 공부해야 하지만... 야간알바에다가 코드스쿼드 코딩테스트까지 하다보니 피곤해서 공부를 띄엄띄엄 하게 된다.. 코드 스쿼드에 합격하면 아마 공부한 내용을 여기에다가 적을수도 있을것 같다. 스코프 빈을 싱글톤인지 프로토 타입인지 결정하는 타입(?) 이라고 하는 것. 싱글톤 빈을 @Autowired를 사용하면 자동으로 생성,등록이 되는데 그때 등록할때마다 하나의 빈을 사용한다는 것. 프로토 타입 위와 같지만 빈을 등록할때마다 서로 다른 빈을 생성한다. 즉 하나만 쓸꺼냐, 각각 다른것을 쓸거냐의 차이. 기본적으로 모두 싱글톤으로 설정되어있다. 그리고 프로토타입의 경우 프록시가 감싸고 있어서 프록시를 통해 접근해야 하는데 그 이유는 프로토타입을 직접 참조하면 바꿀수가 없어서 그렇다고 한다. 프..
보기에는 쉬운문제. 하지만 의외로 생각해야 할게 있었다. 일단 시작하는 날을 0부터가 아니라 1부터 인것. 그리고 낮에 올라가있는 위치와 밤에 올라가 있는 위치를 고려해야 한다. 처음 문제를 풀때는 단순하게 현재 달팽이의 위치와 나무의 높이를 비교했지만, 다르게 나왔고, 무엇이 문제 인지 고민했다. 달팽이가 올라가는 높이는 2, 떨어지는 높이는 1, 나무의 높이가 5라고 가정해보자. 1일차에는 2의 높이까지 올라와 있다. 하지만 나무의 높이가 5이므로 올라오지 못했다. 2일차에는 밤에 자는동안 1의 높이 만큼 떨어져 있다. 다시 올라가니 3의 높이 만큼 올라와 있다. 3일차에는 2의 높이에서 시작. 4만큼의 높이에 도착. 4일차에는 3의 높이에서 시작. 5만큼의 높이에 도착. 종료 이 문제의 핵심을 날짜..
@Autowired 사용법 1. 생성자에 붙인다. @Service public class BookService{ BookRepository bookrepository; @Autowired public BookService(BookRepository bookrepository){ this.bookrepository=bookrepository; } } 이때 BookRepository가 빈이 아닐시, BookService는 생성불가다. 생성자에 BookRepository를 할당해야 하는데 해당하는 빈이 없으므로 생성 할수 없다. 오류가 뜬다. 2.setter에 붙인다. @Service public class BookService{ BookRepository bookrepository; @Autowired pu..
Spring IoC Container: 애플리케이션 컴포넌트의 중앙 저장소. 빈 설정 소스로부터 빈 정의를 읽어들이고, 빈을 구성하고 제공한다. IoC : Inversion of Control. 의존관계주입이라고도 하며 어떤 객체가 사용하는 의존객체를 직접 만들어서 사용하는 것이 아닌, 주입받아 사용하는 방법. Bean: Spring IoC Container가 관리하는 객체 @Service, @Repository등등 어노테이션이 붙여서 빈으로 등록한다. 스코프 : 싱글톤: 하나의 객체에만 사용 프로토타입: 매번 다른 객체 BeanFactory: Spring의 최상위 인터페이스. 가장 핵심클래스. 빈생성, 빈 가공등을 한다. 의존성 문제: BookService가 BookRepositoryt의 의존관계일때,..
알고리즘 문제를 푸는 첫 단계는 언제나 규칙성을 찾아보는 것이다. 단순 무식하게 배열을 만들어서 풀어도 되지만, 시간도 오래걸리고 비효율적이다. 따라서 규칙을 찾고 그 규칙에 따라 수학적으로 풀어보자. 설명을 보고 규칙을 찾아보면 이런 식으로 분수를 읽는것 을 알수 있다. 또한 시작하는 분수의 분모와 분자는 n번째 화살표(위에서 작은 순서부터)이면 분모 혹은 분자도 n인것을 알 수 있다. 그리고 n+1번 분수는 n번 분수보다 분자가 1작고 분모는 1이 크다.(하나의 화살표에서만 해당) 풀이 규칙 n+1번 분수는 n번 분수보다 분자가 1작고 분모는 1크다. n번쨰 화살표의 각 끝부분 분수는 분자 or 분모가 n이다. 지그재그이므로 가장 작은 화살표 를 1번이라 하고, 그 다음 화살표를 2번이라 할때 , 홀..