본문 바로가기

Programming/Spring28

@Qualifier * 타입정보 외의 정보를 추가해서 자동와이어링을 세밀하게 제어할 수 있는 보조적인 방법 타입에 의한 자동와이어링은 안전하기 편리하지만 타입만으로 원하는 빈을 지정하기 어려운 경우가 있다. 위의 두개의 빈은 둘다 DataSource 타입이다. 이럴경우 @Autowired를 사용하면 에러가 발생 한다 이럴때 @Qualifier를 사용한다. @Qualifier("oracleDS") DataSource ds; // DataSource 타입의 빈중에서 태그가 있고 그 값이 mainDB인것으로 한정하여 DI @Autowired @Qualifier("mainDB") DataSource dataSource; 2012. 9. 28.
Autowired Autowired 는 뜻그대로 자동의 Auto와 wired 컴퓨터 시스템에 연결된 뭐 그러니깐 자동으로 연결된 뭐 이런뜻 같다. 뜻그대로 이놈이 하는일은 타입을 이용해서 의존하는 객체를 삽입해 주는 역활을 한다. @Autowired 적용 범위 이놈은 생성자, 필드, 메서드 세곳에 적용이 가능하다 이놈은 사용하기 위해서는 @Required와 마찬가지로 AutowiredAnnotationBeanPostProcessor클래스를 빈객체로 등록하여야 하지만 앞에서 만 등록하여 주면 자동으로 @Autowired를 사용할수 있다. @Autowired를 설정만 하여도 setter와 관계없이 해당하는 타입을 자동으로 등록해주기때문에 편리하게 사용할수 있지만 이것 역시 2개의 같은 타입을 값을 받게 된다면 어느것을 사용해.. 2012. 9. 28.
Spring 3.x 에서 @ResponseBody 로 응답시 Encoding 문제 특정 요청에 따른 JSON 응답을 해주기 위해 @ResponseBody를 이용하여 아래와 같은 코드를 작성하였습니다. @RequestMapping(value="/json", method=RequestMethod.GET) @ResponseBody public String responseBodyJsonOutput() { return "~~~~~~"; } 그러나 여지없이 한글 Encoding 문제가 되어 ??? 로 표기되는 현상이 일어나는.. 구글링 결과 Filter를 이용하는 방법과 String의 Encoding 재설정 등 여러가지 방법을 시도하였으나 결과는 동일... 성공한 방법은 일단 SpringContext 에 아래와 같이 StringHttpMessageConverter Bean을 정의합니다. text.. 2012. 5. 17.
BeanFactory, ApplicationContext 1. Spring Container - 설정파일을 의미 - 객체를 관리한다. - 다음 interface들을 구현한다. BeanFactory : 구현 클래스 - XmlBeanFactory ↑ ApplicationContext : 구현 클래스 - ClassPathXmlApplicationContext, FileSystemXmlApplicationContext ↑ WebApplicationContext : 구현 클래스 - XmlWebApplicationContext - BeanFactory lazy Initialization : BeanFactory의 getBean 메소드가 호출되기까지 객체가 생성을 미룬다. Bean을 늦게 로딩(lazy Initialization)한다. - ApplicationContext.. 2012. 4. 24.