java JSP开发之春中Bean的使用

  

<强> java JSP开发之春中Bean的使用

  

在传统的Java应用中,bean的生命周期很简单。使用Java关键字新进行豆实例化,然后豆就可以被使用了,一旦该bean不再使用,Java就自动进行垃圾回收。然而,在春天中,bean的生命周期就比较复杂了。下面是一个bean装载到春天应用上下文的过程:

  

癹ava

  

如图所示:在你准备调用豆之前,豆工厂执行了若干启动步骤:

  

1。春天对bean进行实例化;
  

  

2。春天将值和bean的引用注入到bean对应的属性中,
  

  

3。如果豆实现了BeanNameAware接口,春天将bean的ID传递给setBean-Name()方法;
  

  

4。如果豆实现了BeanFactoryAware接口,春天将调用setBeanFactory()方法,将BeanFactory容器实例传入;

  

5。如果豆实现了ApplicationContextAware接口,春天将调用setApplicationContext()方法,将bean所在的应用上下文的引用传入进来。
  

  

6。如果豆实现了BeanPostProcessor接口,春天将调用它们的post-ProcessBeforeInitialization()方法;
  

  

7。如果豆实现了InitializingBean接口,春天将调用它们的after-PropertiesSet()方法。类似地,如果豆使用initmethod声明了初始化方法,该方法也会被调用;
  

  

8。如果豆实现了BeanPostProcessor接口,春天将调用它们的post-ProcessAfterInitialization()方法;
  

  

9。此时,豆已经准备就绪,可以被应用程序使用了,它们将一直驻留在应用上下文中,直到该应用上下文被销毁;
  

  

10。如果豆实现了DisposableBean接口,春天将调用它的破坏()接口方法。同样,如果豆使用销毁方法声明了销毁方法,该方法也会被调用。

  

<强>一、创建可以被发现的Bean

  

在厨师的眼中,一套好的刀是必不可少的,它能够将平淡的食物素材加工成精致的艺术品。

        包烹饪;      公共接口刀{      空切();   }   之前      

现在,我们创建一个名为刀(刀)的接口,它拥有削减(切)的功能。接下来我们实现这个接口

        包烹饪      @ component   公共类牛肉实现刀{      私人int重量=2;   私人双价格=32.1;      公共空间减少(){   system . out。println(“这是完美的牛肉”+“重量:“+重量   +“公斤”+”、“+“价格”+价格+ " $ ");   }   }      

请注意,我们在牛肉类上使用了@ component注解。这个简单的注解表明该类是一个组件类,并告诉春天要为这个类创建bean。

  

在默认情况下,组件扫描是不启用的,我们需要显示配置一下春天,命令春天去寻找带有@ component注解的类,并为其创建bean

        包烹饪      @ configuration   @ComponentScan   公开课knifeConfig {         }      

注意到,在knifeConfig类上加上了@ComponentScan注解,该注解能够在春天中开启组件扫描,如果没有其他配置的话,@ComponentScan默认会扫描与配置类相同的包,去查找带有@ component的注解类,并在Spring中自动为其创建一个bean。如果你更倾向于使用XML来启用组件扫描的话,那么可以使用Spring上下文命名空间的& lt;上下文:component-scan>元素。

  

该标签会开启组件扫描,去烹饪包下寻找带有@ component的注解类。

  

以上就是春天中Bean的使用方法,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

java JSP开发之春中Bean的使用