spring介绍

  • 三层框架中spring的位置

  • spring一站式框架

    – 正是因为spring框架性质属于容器性质的。

    – 容器中装什么对象就有什么功能,所以可以一战式。

    – 不仅不排斥其他框架,还能帮助其他框架管理对象。

    – aop支持(aop面向切面编程)

    –ioc思想

    –spring jbdc

    –aop事务

    –junit测试支持


spring 搭建

  • 导包 (最基础的包)

    日志包

    可选

  • 创建对象

  • 书写配置注册对象到容器
    –位置任意(建议放在src下)
    –配置文件名任意(建议applicationContext)

  • 代码测试


spring概念

思想
  • ioc
  • di
applicationcontext&BeanFactory
  • BeanFactory接口
    –spring原始接口,针对原始接口的实现功能较为单一
    –BeanFactory接口实现类的容器,特点是每次在获得对象时才会创建对象
  • ApplicationContext
    – 每次容器启动时就会创建容器中配置的所有对象,并提供更多功能
    – 从类路径下加载配置文件:ClassPathXmlApplicationContext(主要使用)
    – 从硬盘绝对路径下加载文件:FileSystemXmlApplicationContext
  • 结论:web开发中,使用applicationcontext,在资源匮乏的环境可以使用BeanFactory

spring配置

  • Bean元素
  • spring创建对象方式
    –空参构造方式(重要)

    –静态工厂(了解)


    –实例工厂(了解)

  • Bean元素进阶
    –scope属性
    1.singleton(重要)
    –默认值
    –单例对象
    –被标识为单例对象在spring容器中只会存在一个实例
    2.prototype(重要)
    –多例对象
    –被标识为多例的对象,每次在获取时才会创建,并且每次创建都是新的对象
    3.request(了解)
    –web环境下,对象与request生命周期一致
    4.session (了解)
    –web环境下,对象与session生命周期一致
  • spring分模块配置

spring中的属性注入

  • 注入方式
    –set方式注入(重点)

    –构造方式注入(重点)

    –p名称空间注入(了解)

    –spel注入 (了解)
  • 复杂类型注入
    –数组

    –list

    –map

    –properties