### 分析
XML 文件解析包爲 org.springframework.amqp.rabbit.config,包中的各個 Parser 類用於解析對應的 XML 元素,建立相應的 BeanDefinition,指導 IOC 容器建立實例。例如,ListenerContainerParser 類用於解析 <rabbit:listener-container> 元素,建立出兩個 RootBeanDefinition,分別表示 listener-container 和 listener(對應的 class 爲 SimpleMessageListenerContainer 和 MessageListernerAdapter)。
經過 Parser 類,能夠了解 XML 中的元素與屬性與 Spring AMQP 實現代碼的對應關係。
具體細節不在本文範疇內,之後有機會會分析 Spring 源碼。
## 示例配置詳解
connection-factory 定義了鏈接工廠,其實現類是
CachingConnectionFactory。
listener 定義了消息監聽器,其實現類是
MessageListernerAdapter。ref 對應 delegate 屬性,method 對應 defaultListenerMethod 屬性。queue-names 表示整個 ListenerContainer 監聽的隊列列表,它實際上對應 SimpleMessageListenerContainer 的 queueNames 屬性。