400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

Spring[01.基础知识整理(上)]-创新互联

概念 IOC(Inversion of Control)

其思想是反转资源获取的方向. 传统的资源查找方式要求组件向容器发起请求查找资源. 作为回应, 容器适时的返回资源. 而应用了 IOC 之后, 则是容器主动地将资源推送给它所管理的组件, 组件所要做的仅是选择一种合适的方式来接受资源. 这种行为也被称为查找的被动形式

成都创新互联制作网站网页找三站合一网站制作公司,专注于网页设计,成都网站建设、网站设计,网站设计,企业网站搭建,网站开发,建网站业务,680元做网站,已为上千服务,成都创新互联网站建设将一如既往的为我们的客户提供最优质的网站建设、网络营销推广服务!DI(Dependency Injection) — IOC 的另一种表述方式

即组件以一些预先定义好的方式(例如: setter 方法)接受来自如容器的资源注入. 相对于 IOC 而言,这种表述更直接

通过反射机制配置Bean 注入的方式

abstract属性为true的时候,IOC容器不会实例化对象,如果value属性含有特殊字符,需要使用包裹起来

集合通过工厂方法配置Bean 静态工厂方法

Factory类本身不需要实例化,这个Factory类中提供了1个静态方法来生成bean对象

public class StaticAddressFactory {

    private static Map addressMap = new HashMap() ;

    static {
        addressMap.put("JINAN", new Address("JINAN", "SHILIHE"));
        addressMap.put("QINGDAO", new Address("QINGDAO", "SIFANG"));
    }
    public static Address getAddress(String name){
        return addressMap.get(name);
    }
}
实例工厂方法

Factory类本身需要实例化

public class SigletonAddressFactory {
    public Map getAddressMap() {
        return addressMap;
    }

    public void setAddressMap(Map addressMap) {
        this.addressMap = addressMap;
    }

    private  Map addressMap = new HashMap() ;

    public Address getAddress(String name){
        return this.addressMap.get(name);
    }
}
Factory Bean模式配置Bean Factory Bean模式

比工厂方法模式更常见,Factory Bean工厂类必须实现spring提供的FactoryBean的接口

重写以下三个方法:

案例
public class MyAddressFactory implements FactoryBean
{ private String city; private String street; public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getStreet() { return street; } public void setStreet(String street) { this.street = street; } @Override public Address getObject() throws Exception { return new Address(this.city, this.street); } @Override public Class getObjectType() { return Address.class; } @Override public boolean isSingleton() { return false; } }

通过FactoryBean方式,从IOC容器里面bean,通过FactoryBean的getObject返回指定的bean,property: MyAddressFactory的属性设置

通过注解方式注入BeanScope("prototype")

当bean增加注解@Scope("prototype"),那么就是获得的多实例的bean

命名策略

对于扫描到的组件, Spring 有默认的命名策略:


        

        
bean的作用域 singleton

单例模式

prototype

每次取出的bean对象都需要实例化


本文题目:Spring[01.基础知识整理(上)]-创新互联
新闻来源:http://mbwzsj.com/article/dpdghj.html

其他资讯

让你的专属顾问为你服务