经常看到resource下面有多个关于spring的配置文件,其实是多个 Spring 配置文件通过 import 方式整合的。
import标签:
- 配置文件会先合并,后解析,也就是说,无论是命名空间还是配置的内容,都会合并处理。
- 因为多个 Spring 配置文件最终会合并到一起(形成一个 ApplicationContext),因此这些配置中的 bean 都是可以互相引用的。
Bean标签:
我们只需在Spring容器能加载到的地方配置bean就可以把自定义类加入到Spring容器中,注意:我们配置的bean是实现类,而不是接口!!
同时我们可以直接在我们的impl类中配置@service,把相应的类注入到spring容器中。
*在配置文件中配置bean,其实就是在Spring容器中注入类,这个类在Spring容器中有唯一一个表示id,我们可以通过Spring容器去管理这个类,非常方便。
千万注意要在web.xml文件中,的<context-param></context-param>标签中配置我们自定义的.xml文件,通过<listener></listener>这个标签把我们配置的文件注入到Spring容器中。
Bean的参数说明:
1.id属性:起名称,任意命名,不能包含特殊符号,可以根据id值得到配置对象
2.class属性:创建对象所在类的全路径
3.name属性:功能和id属性一样,可以包含特殊符号
4.scope属性:默认是单例模式
Property:
- name属性:属性名,加载的类对象的一个属性名称
- value属性:name属性的赋值
- ref属性:ref是指bean配置文件中的bean名称,将已经存在的对象引入进来赋值给对象的属性
mybatis的配置中,需要配置一个MapperScannerConfigurer用来指定扫描mapper接口的包,还配置一个sqlSessionFactoryBean用来连接数据库和配置sql.xml的地址及类型的转换方式,sqlSessionFactoryBean是MapperScannerConfigurer的一个属性名。
typeAliasesPackage属性的说明:mapper.xml中的resultType中经常会用到一些自定义POJO,你可以用完全限定名来指定这些POJO的引用。
typeHandlersPackage:数据类型处理器来帮我们对数据进行正确的类型转换,在mybatis中又是谁帮我们在做这些事情呢?那就是<typeHandlers>元素了,而typeHandlersPackage就是将配置的路径的包中的类作为类型转换处理类。
ConfigLocation:指定拦截器插件