Spring3.0官网文档学习笔记(四)--3.1~3.2.3
2023-09-11 14:20:42 时间
3.1 Spring IoC容器与Beans简单介绍
BeanFactory接口提供对随意对象的配置;
ApplicationContext是BeanFactory的子接口。整合了Spring Aop功能,消息资源控制。事件公布,应用层特殊的上下文(在web应用中)
由IoC容器实例化、组装、管理的对象都是Bean
3.2 容器概述
org.springframework.context.ApplicationContext代表Spring IoC容器,而且负责通过读取配置元数据来实例化、配置、组装Bean。配置元数据能够通过三种形式表示:xml,Java凝视,Java code(这个不懂)
在独立的环境中。实例化ClassPathXmlApplicationContext或FileSystemXmlApplicationContext对象。
3.2.1 配置元数据
除了配置在xml文件里,还有两种方法:
Annotation-based configuration: ?
Java-based configuration: ?
BeanFactory接口提供对随意对象的配置;
ApplicationContext是BeanFactory的子接口。整合了Spring Aop功能,消息资源控制。事件公布,应用层特殊的上下文(在web应用中)
由IoC容器实例化、组装、管理的对象都是Bean
3.2 容器概述
org.springframework.context.ApplicationContext代表Spring IoC容器,而且负责通过读取配置元数据来实例化、配置、组装Bean。配置元数据能够通过三种形式表示:xml,Java凝视,Java code(这个不懂)
在独立的环境中。实例化ClassPathXmlApplicationContext或FileSystemXmlApplicationContext对象。
3.2.1 配置元数据
除了配置在xml文件里,还有两种方法:
Annotation-based configuration: ?
Java-based configuration: ?
你能够使用Spring's integration with AspectJ配置不在IoC容器控制下的对象?
基于xml配置的基本形式:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <bean id="..." class="..."> <!-- collaborators and configuration for this bean go here --> </bean> <bean id="..." class="..."> <!-- collaborators and configuration for this bean go here --> </bean> <!-- more bean definitions go here --> </beans>3.2.2 实例化一个容器
ApplicationContext context = new ClassPathXmlApplicationContext(new String[] {"services.xml", "daos.xml"});
Note:第4章有更方便的机制读取XML文件?
3.2.2.1 基于XML配置的元数据的组成
<beans> <import resource="services.xml"/> <import resource="resources/messageSource.xml"/> <import resource="/resources/themeSource.xml"/> <bean id="bean1" class="..."/> <bean id="bean2" class="..."/> </beans>services.xml必须位于包括该文件的xml文件同个文件夹或者是在classPath文件夹下。
能够通过相对路径“../path”这样的方式来配置文件路径,可是这方法并不推荐(用这样的方式创建出来的是依赖文件是在当前应用的外部?)。尤其不推荐用于"classpath:"这样的URL中(执行时解决程序会选择“近期的”classpth,并查看它的父文件夹,导致找不到相应的xml文件)。
能够使用:"file:C:/config/services.xml"或"classpath:/config/services.xml"。可是要记住假设使用绝对路径的话,就存在耦合问题了。
3.2.3 使用容器
// create and configure beans ApplicationContext context = new ClassPathXmlApplicationContext(new String[] {"services.xml", "daos.xml"}); // retrieve configured instance PetStoreServiceImpl service = context.getBean("petStore", PetStoreServiceImpl.class); // use configured instance List userList service.getUsernameList();
相关文章
- 【机房重构】一步一步往上爬——又见UML与文档
- android Universal Image Loader for Android 说明文档 (1)
- 软件开发-文档集
- 《从零开始学Swift》学习笔记(Day 57)——Swift编码规范之注释规范:文件注释、文档注释、代码注释、使用地标注释
- ElasticSearch创建文档
- 使用Java客户端操作elasticsearch--设置mappings、添加文档、查询数据
- Redis使用文档一
- [BI项目记]-文档版本管理笔记
- Angular form 官网文档的学习笔记:Angular两种实现form的方式
- 【数据库系统】An Introduction to Document-Oriented Databases面向文档的数据库简介
- react文档demo实现输入展示搜索结果列表
- 007-elasticsearch5.4.3【一】概述、Elasticsearch 访问方式、Elasticsearch 面向文档、常用概念
- wps批量将文档括号内的字符串修改颜色
- Hadoop-2.2.0中文文档—— Common - 服务层认证
- ES _source字段介绍——json文档,去掉的话无法更新部分文档,最重要的是无法reindex
- 你的代码暴漏了你的年龄(毕业设计)--技术文档+程序源代码