当前位置: 首页 > 知识库问答 >
问题:

关于春豆失调和破坏的一些疑问

卓星波
2023-03-14

这段时间我在学习Spring框架。

现在我正在研究春豆的生命周期,尤其是关于豆子的日化和破坏,阅读本教程:

http://www.tutorialspoint.com/spring/spring_bean_life_cycle.htm

我已经实现了前一篇文章中提出的示例,但我对这个论点有疑问。

在这个例子中,我只有两个类:HelloWorld。java和MainApp。JAVA

在地狱世界。java类I有两种方法用于bean InzialiTazion:init()(在创建bean后由框架调用)和bean清理:*destroy()(在应用程序结束时由框架在bean销毁之前调用)

好的,这很清楚,这两个方法是由框架在bean生命周期的两个特定时刻自动调用的,因为我在应用程序上下文xml文件中通过初始化方法和销毁方法属性为这个bean删除了它:

<bean id="helloWorld" 
    class="org.andrea.myexample.myInitDestroyExample.HelloWorld"
    init-method="init" destroy-method="destroy">
    <property name="message" value="Hello World!"/>
</bean>

这对我来说似乎很清楚。

我有一些问题需要理解,这与前一篇文章的开头有关,事实上,它表明,要有一个日化方法,我的bean必须实现InitializingBean接口及其方法的代码:afterPropertiesSet()

为了执行bean清理(在这之前是deledet),我的bean必须实现DisposableBean接口及其方法的代码:destroy()

好啊所以为什么在本文中首先说明我的bean必须实现这些接口,然后在示例中不做这件事,而只是在XML配置中声明init和destroy方法的存在,并在我的类中实现它,而我的类不实现任何接口?

Tnx

共有3个答案

空谦
2023-03-14

虽然今天的一代人都是快速行动的一代,但你们中的许多人都没有一种强烈的心态,阻止你们实现梦想

戎高爽
2023-03-14

有几种方法可以让Spring的bean初始化/销毁

1)你可以定义default-init-method/default-forge-methodbean(根元素xml配置),然后Spring将在它实例化的任何bean中寻找这些方法

2) 可以为bean定义单独的init方法/destroy方法

3) 您可以实现InitializingBean/DisposableBean接口,即使xml配置中没有定义init method/destroy method,Spring也会调用它们

4) 您可以使用@PostConstruct/@PreDestroy注释在bean中注释方法,并打开

柯轶
2023-03-14

在基于XML的配置元数据的情况下,可以使用init-method属性指定具有无效无参数签名的方法的名称

XML定义是实现此类接口的替代方案。

 类似资料:
  • 在实际应用中,destroy方法的可能示例是什么?为什么一个正在运行的应用程序想要销毁它的bean?如果bean是由spring容器(比如ContextLoaderListener)为web应用程序创建的,那么如何重新创建这些bean,因为容器已经启动了。有没有办法在不重启应用服务器的情况下重启spring IoC容器?

  • 我正在学习Spring框架,现在我正在学习init和callbacl方法。 我将遵循以下教程:http://www.tutorialspoint.com/spring/spring_bean_life_cycle.htm 我对本教程有一些疑问: 1) 为什么在MainApp类中,他将上下文声明为AbstractApplicationContext,但使用实现类PathXmlApplicationC

  • 下面是我的终端输出: 它似乎只对某些字母进行了不正确的加密/解密。到底是怎么回事?

  • 问题内容: 春季版 :3.2.4.RELEASE和3.2.9.RELEASE Mockito版本 :1.8.5 我一直在尝试将H2测试引入一个用于集成测试的旧项目,并且遇到了一些问题。由于事务传播的方式,我需要模拟一个自动装配的类。我以前做过,但是现在遇到了严重的问题。初始化测试时将引发以下错误消息: org.springframework.beans.factory.BeanCreationEx

  • 结果: 问题: 1.lis,ele=>ele.textContent中我把ele.textContent换成了lis.textContent结果出来的是一个undefine的集合,是为什么? 2.lis,ele=>ele.textContent我是否可以理解为Array.from(arr,function),然后返回元素的文本内容? 3.该怎么理解lis和ele之间的关系呢?(因为看到很多案例都是

  • 我在WordPress开发方面是非常新的(还有PHP开发方面,我来自Java和C#)。今天,我安装了Aptana并配置了XDebug来检查TwentyTware主题中发生了什么。 特别是,我试图理解WordPress是如何通过循环加载帖子的。 所以,从现在起,我只知道如何在一个WP主题中创建一个循环,但我不知道它到底是如何工作的。 因此,在twentytware中,我找到了post循环,这段代码是