美文网首页
Spring入门(二)

Spring入门(二)

作者: 曹达兴 | 来源:发表于2017-04-22 12:03 被阅读0次

    Spring表达式语言(简称SpEL):是一个支持运行时查询和操作图的强大的表达式语言

    语法类似EL:SpEL使用${...}作为界定符,所有在大括号中的字符都将被认为是SpEL

    通过SpEL可以实现:

    通过bean的id对bean进行引用

    调用方法以及引用方法中的属性

    计算表达式的值

    正则表达式的匹配

    SpringIOC容器对Bean的生命周期进行管理的过程:

    通过构造器或工厂方法创建Bean 实例

    为Bean的属性设置值和对其他Bean的引用

    调用Bean的初始化方法

    Bean可以使用了

    当容器关闭时,调用Bean的销毁方法

    在Bean的声明里设置init-method和destroy-method属性,为Bean指定初始化和销毁方法

    Bean后置处理器允许在调用初始化方法前后对Bean进行额外的处理

    Bean后置处理器对IOC容器里所有的Bean实例逐一处理。而非单一实例。

    实现方法:

    创建一个实现某个java接口的类,实现其中的两个方法

    在Spring IOC中配置Bean


    通过工厂方式配置bean

    静态工厂方法:直接调用某一个类的静态方法就可以返回bean的实例

    class属性:指向静态工厂方法的全类名

    factory-method:指向静态工厂方法的名字

     constructor-arg:如果工厂方法需要传入参数,则使用

    实例工厂方法:实例工厂的方法,即先需要创建工厂本身,再调用工厂的实例方法

    factory-bean属性:指向实例工厂方法的bean

    factory-method:指向静态工厂方法的名字

    constructor-arg:如果工厂方法需要传入参数,则使用

    通过FactoryBean配置Bean

    自定义的FactoryBean需要实现FactoryBean接口

    在配置文件中,通过FactoryBean来配置Bean的

    class:指向FactoryBean的全类名

    property:配置FactoryBean的属性

    但实际返回的却是FactoryBean的getObject()方法返回的实例


    通过注解配置bean

    Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件

    特定组件包括:

    @Component:基本注解,标识了一个受Spring管理的组件

    @Responsitary:标识持久层组件

    @Service:标识服务层(业务层)组件

    @Controller:标识表示层组件

    Spring有默认的命名策略

    也可以在注解中通过value属性标识组件的名称

    context:exclude-filter 子节点排除哪些指定表达式的组件

    context:include-fiter  子节点指定包含哪些表达式的组件,该子节点需要use-default-fiters配合使用

    指定Spring容器扫描的包:

    <context:component-scan base-package="包名">Spring会扫描这个基类包里及其子包里的所有类

    <context:component-scan>元素还会自动注册AutowiredAnnotationBeanPostProcessor实例,该实例可以自动装配具有@Autowired和@Resourse、@Inject注解的属性
















    相关文章

      网友评论

          本文标题:Spring入门(二)

          本文链接:https://www.haomeiwen.com/subject/gmkszttx.html