Spring_配置 Bean(1)】的更多相关文章

applicationContext.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://…
1.Spring容器 在 Spring IOC 容器读取 Bean 配置创建 Bean 实例之前, 必须对它进行实例化. 只有在容器实例化后, 才可以从 IOC 容器里获取 Bean 实例并使用.Spring 提供了两种类型的 IOC 容器实现. BeanFactory: IOC 容器的基本实现.   ①ApplicationContext: 提供了更多的高级特性. 是 BeanFactory 的子接口.   ②BeanFactory 是 Spring 框架的基础设施,面向 Spring 本身:…
beans-factorybean.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://w…
beans-factory.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.s…
package com.tanlei.bean.FactoryBean; import org.springframework.beans.factory.FactoryBean; public class CarFactoryBean implements FactoryBean<Car>{ private String brand; public void setBrand(String brand) { this.brand = brand; } //返回bean的对象 @Overrid…
本次讲述项目背景: 创建Service类,Service下用到dao类.通过在Spring中配置bean,实现在项目启动时,自动加载这个类 本次只讲述配置bean的注意事项,故只给出简单实例: 创建Service: public class UserService { private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } public void init(){ ………
之前学了,配置bean可以用普通全类名配置.用工厂方法配置,FactoryBean又是什么呢 有时候配置bean要用到,IOC其他Bean,这时,用FactoryBean配置最合适. FactoryBean是一个接口,要用的话就要实现它.他有三个方法: getObject()  //返回bean对象 getObjectType()  //返回bean的类型  isSingleton()   //是否单例 弄个例子: Car类 package com.guigu.spring.factorybea…
1. 使用静态工厂方法创建Bean,用到一个工厂类 例子:一个Car类,有brand和price属性. package com.guigu.spring.factory; public class Car { private String brand; private double price; public Car(){ } public Car(String brand,double price){ this.brand=brand; this.price=price; } public S…
Spring通过注解配置bean 基于注解配置bean 基于注解来配置bean的属性在classpath中扫描组件 组件扫描(component scanning):Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件. 特定的组件包括: -@Component:基本注解,标识了一个受Spring管理的组件 -@Responsitory:标识持久层组件 -@Service:标识服务层(业务层)组件 -@Controller:标识表现层组件 对于扫描到的组件,Spring…
Main(测试方法) public class Main { public static void main(String[] args) { //1.创建Spring 的IOC容器对象: //spring提供了两种IOC容器的实现 //1.BeanFactory:面向spring本身,,(就是底层的东西) //2.ApplicationContext: 面向使用spring框架的开发者,她提供了更多高级特性,是BeanFactory的子接口 // ----ConfigurableApplica…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
src\dayday\CarFactoryBean.java package dayday;import org.springframework.beans.factory.FactoryBean;/** * Created by I am master on 2016/11/30. *///自定义的FactoryBean需要实现FactoryBean接口public class CarFactoryBean implements FactoryBean<Car>{ private Strin…
1,bean 的配置 <bean id="helloWorld" class="com.yfy.HelloWorld"> <property name="name" value="spring"></property> </bean> class: bean 的 指的是HelloWorld的全路径名称,并且由于是通过反射方式创建Bean,因此Bean中必须有无参的构造器 publ…
在第一讲中显示了如何使用注解配置bean,其实这是Spring3引进的特性,Spring2使用的是XML的方式来配置Bean,那时候漫天的XML文件使得Spring有着配置地狱的称号.Spring也一直在力求改变这一缺陷.Spring3引入的注解方式确实使配置精简不少,而Spring4则引入了Groovy DSL来配置,其语法比XML要简单很多,而且Groovy本身是门语言,其配置文件就相当于代码,可以用来实现复杂的配置. 废话少说,让我们来对Groovy DSL配置来个第一次亲密接触. 首先我…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
1.通过静态工厂方法配置Bean 要声明通过静态方法创建的 Bean, 需要在 Bean 的 class 属性里指定拥有该工厂的方法的类, 同时在 factory-method 属性里指定工厂方法的名称. 最后, 使用 <constrctor-arg> 元素为该方法传递方法参数. //创建工厂 public class CarFactory { public static Map<String, Car> cars = new HashMap<String, Car>(…
一.基于 XML 的 Bean 的配置——通过全类名(反射) <bean <!-- id: bean 的名称在IOC容器内必须是唯一的若没有指定,则自动的将全限定类名作为 改 bean 的名称-->id="hello" <!-- 通过全类名的方式来配置 bean -->class="com.atguigu.spring.helloworld.HelloWorld"> </bean> 1.通过属性注入 即通过 setXx…
Spring通过注解配置bean 基于注解配置bean 基于注解来配置bean的属性 在classpath中扫描组件 组件扫描(component scanning):Spring能够从classpath下自动扫描,侦测和实例化具有特定注解的组件. 特定的组件包括: -@Component:基本注解,标识了一个受Spring管理的组件 -@Responsitory:标识持久层组件 -@Service:标识服务层(业务层)组件 -@Controller:标识表现层组件 对于扫描到的组件,Sprin…
在Spring中配置bean的一些细节.具体信息请参考下面的代码及注释 applicationContext.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…
Spring 通过工厂方法(Factory Method)来配置bean 在Spring的世界中, 我们通常会利用bean config file 或者 annotation注解方式来配置bean. 在第一种利用bean config file(spring xml)方式中, 还包括如下三小类 反射模式 工厂方法模式(本文重点) Factory Bean模式 其中反射模式最常见, 我们需要在bean 配置中指明我们需要的bean object的全类名. 例如: <bean id="car1…
1.实现Spring 提供的FactoryBean接口 package com.spring.facoryBean; import org.springframework.beans.factory.FactoryBean; public class CarFactoryBean implements FactoryBean<Car> { private String brand; public void setBrand(String brand) { this.brand = brand;…
概要: 通过调用静态工厂方法创建Bean 调用静态工厂方法创建Bean是将对象创建的过程封装到静态方法中.当client须要对象时,仅仅须要简单地调用静态方法,而不用关心创建对象地细节. 要声明通过静态方法创建的Bean,须要在Bean地class属性里指定拥有该工厂的方法的类,同一时候在factory-method属性里指定工厂方法的名称.最后,使用<constructor-arg>元素为该方法传递方法參数 通过调用实例工厂方法创建Bean 实例工厂方法:将对象的创建过程封装到另外一个对象实…
实验1:配置通过静态工厂方法创建的bean  [通过静态方法提供实例对象,工厂类本身不需要实例化!] 1.创建静态工厂类 public class StaticFactory { private static HashMap<String, Book> map = null; static{ map = new HashMap<>(); map.put("book01", new Book("java", "you", 3…
关于Spring中基于xml文件配置bean的详细总结(spring 4.1.0) 一.Spring中的依赖注入方式介绍 依赖注入有三种方式 属性注入 构造方法注入 工厂方法注入(很少使用,不推荐,本文不再介绍) 属性注入   通过 setter 方法注入Bean 的属性值或依赖的对象.属性注入使用 <property>元素, 使用 name 属性指定 Bean 的属性名称,value 属性或 <value> 子节点指定属性值 .属性注入是实际应用中最常用的注入方式.HelloWo…
1.属性注入 (1)根据setter方法属性注入,这里使用的是property标签.需要bean属性提供对应的setter方法,比如笔记(1)里的 HelloWorld使用的就是这种方法. <!-- 根据setter方法属性注入 --> <bean id="helloworld" class="com.broadtext.beans.Helloworld"> <property name="name" value=&…
在spring的世界中, 我们通常会利用bean config file 或者 annotation注解方式来配置bean. 在第一种利用bean config file(spring xml)方式中, 还包括如下三小类 反射模式 工厂方法模式(本文重点) Factory Bean模式 其中反射模式最常见, 我们需要在bean 配置中指明我们需要的bean object的全类名. 例如: <bean id="car1" class="com.home.factoryMe…
之前说的三种配置方式,都是使用XML配置,现在我们说说使用注解配置Bean. 这部分内容主要分为两个部分:使用注解配置Bean,使用注解配置Bean属性. 在classpath中扫描组件 组件扫描:Spring能够从ClassPath下自动扫描,侦测和实例化具有特定注释的组件 特定组件包括: @Component @Respository 持久层 @Service 业务层 @Controller 控制层 这四个标签可以混用,暂时没有什么区别,不过建议在不同层用不同的注释,方便阅读. 创建一个新的…
这是配置Bean的第三种方式,FactoryBean是Spring为我们提供的,我们先来看看源码: 第一个方法:public abstract T getObject() throws Exception; 返回Bean本身, 第二个方法:public abstract Class<?> getObjectType(); 返回Bean实例 第三个方法:public boolean isSingleton() { return true; } 返回Bean是否单例 也许你会问,我们可以通过全类名…