페이지

레이블이 spring인 게시물을 표시합니다. 모든 게시물 표시
레이블이 spring인 게시물을 표시합니다. 모든 게시물 표시

2015년 11월 12일 목요일

Scala2e Chapter6 Basic Types and Operations 6.1 A specification for class Rational

A rational number is a number that can be expressed as a ratio n/d, where n and d are integers, except that d cannot be zero.
n is called the numerator and d the denominator.

Each rational number will be represented by on Rational object. when you add two Rational objects, you'll create a new Rational object to hold the sum.

scala> val oneHalf = new Rational(1, 2)
oneHalf: Rational = 1/2
scala> val twoThirds = new Rational(2, 3)
twoThirds: Rational = 2/3
scala> (oneHalf / 7) + (1 twoThirds)
res0: Rational = 17/42





2007년 11월 4일 일요일

Chapter 3. The IoC container

3.2. Basics - containers and beans
bean은 container 의 메터 데이터 설정으로 빈들간의 의존성을 및 빈들을 반영한다.

3.2.1. 컨테이너( Container)



org.springframework.beans.factory.BeanFactory

- XmlBeanFactory class





3.2.1.1. Configuration metadata



3.2.2. Instantiatiing a container

Resource resource = new FileSystemResource("beans.xml");BeanFactory factory = new XmlBeanFactory(resource);

ClassPathResource resource = new ClassPathResource("beans.xml");BeanFactory factory = new XmlBeanFactory(resource);

ApplicationContext context = new ClassPathXmlApplicationContext
(
new String[] {"applicationContext.xml", "applicationContext-part2.xml"}

);

// of course, an ApplicationContext is just a BeanFactoryBeanFactory factory
//= (BeanFactory) context;
3.2.2.1. Composing XML-based configuration metadata

외부의 정의된 3개의 xml(services.xml, messageSource.xml, themeSource.xml) 정의


3.2.3. The Beans
Spring IoC 컨테이너는 하나 또는 그 이상의 beans를 관리 한다.
빈 구조를 메타 데이터를 참조하여 정의 하는 방법

- 제한된 페키지 클래스 네임(a package-qualified class name):
이미 정의된 클래스로부터 구현된다. 만약 static 팩토리 메소드를 통해 제시된 것이라면 팩토리 클래스가 명시될것이다.

- 빈은 xml에 설정된 요소되로 설정되어질 것이다.(prototype, singleton, autowiring mode, initialization, desctruction callbacks, forth)

- 생성된 빈에 생성자 arguments 나 property 값으로 설정되어 질것이다.

- 빈이 작업할때 다른 빈들을 필요로 할 것이다 그것이 collaborators이다.(also called dependencies).

빈의 요소
class, name, scope, constructor arguments, properties, autowiring mode, dependency checking mode, lazy-ionitialization mode, initialization method, destruction method
3.2.3.1. Naming beans

빈은 하나 또는 그 이사의 아이디(identifiers, names)를 가진다. id 는 반드시 유니크 여야 한다.
만약 하나 이상의 아이디를 가진다면 별칭(aliases)을 고려해야 한다.
xml 기반의 설정으로 했을때 'id' 혹은 'name' 속성이 그 빈의 identifier(s) 이다.
xml정의에서 이 id 이름 제한
- 상수로 정의할 수 없다.
name 속성에 콤마(,), 세미콜론(;), whitespace를 사용할 수 없다.

Please note that you are not required to supply a name for a bean. If no name is supplied explicitly, the container will generate a (unique) name for that bean. The motivations for not supplying a name for a bean will be discussed later (one use case is inner beans).

3.2.3.1.1 Aliasing beans


3.2.3.2. Instantiating beans