如何在spring容器中銷毀bean 80C

Listener_Thing_List_Editor_Button Listener_Refresh=Application_Context.getBean(Listener_Thing_List_Editor_Button.class);

.......

請問如何在不關閉容器的情形下銷毀某個bean(例如 Listener_Refresh) ?

謝謝兩位關注,不過也許沒有把問題說清楚,兩位的建議無法解決問題。

我試再把問題詳述如下:

上述的listener 放在一個 button 上,button放在splitpane上

以下是關閉splitpane的代碼:


  public Boolean Set_component_user_wants_to_cancel_all()
    {
        Boolean OK=true;
        if(Sure_to_cancel)
        {
                this.removeAll();           //"this"=splitpane
                Listener_Refresh=null;

        }
        else
        {
            ...........
            OK=false;
       }
       return OK;   
    }

以下是listener的代碼:

@org.springframework.stereotype.Component
@Scope("prototype")
public class Listener_Thing_List_Editor_Button implements ActionListener
{
    private Mirror_World_Dispatcher Mirror_World_Dispatcher=null;
    public Listener_Thing_List_Editor_Button()
    {

    }
    public void setMirror_World_Dispatcher(Mirror_World_Dispatcher Mirror_World_Dispatcher)
    {
        this.Mirror_World_Dispatcher=Mirror_World_Dispatcher;
    }
    public void actionPerformed(ActionEvent e) 
    {
        this.Mirror_World_Dispatcher.React_to_thing_list_editor_action_event(e,null);
    }
}

問題是,如果我重複 “關閉splitpane,打開splitpane,按button”過程 n次,actionPerformed則會被執行n次。

所以我懷疑執行上述Set_component_user_wants_to_cancel_all()后,Listener_Refresh實例依然存在。

3个回答

BeanDefinitionRegistry beanDefinitionRegistry = (DefaultListableBeanFactory) configurableContext.getBeanFactory();
Spring 提供了 Bean 工厂管理工具类,可以移除注册的 Bean ,方法是:

beanDefinitionRegistry.removeBeanDefinition(beanId);

这样可以讲对应的 Bean 移除容器的托管范围外。

防在局部变量等生命周期短的地方,设置为null或者用新的对象替换,老的对象自然就被回收了

对象使用完后 直接赋值为空 虚拟机检测到对象未被引用 会自动进入回收 慎用gc()

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何从当前spring容器中获得bean?

在用spring做一个web项目,有一个需求是在没有servletContext的情况下,根据beanId获得当前容器中的具体bean对象。请问如何实现?注意,这个beanId可能是外部系统传过来的,所以无法用@autowire提前注入。 发现 [code="java"]WebApplicationContext wac = ContextLoader.getCurrentWebApplicationCon;[/code] 但这个方法只能获得web容器,我想做的是获得当前的spring root container即无论当前是通过web还是非web加载的bean都能让我获得到。 如果不是web项目可以直接 ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(); 然后我每次都是中这个context去取bean,但如果是web项目,该怎么做呢?

spring获取容器中的bean的问题

![图片说明](https://img-ask.csdn.net/upload/201704/18/1492519951_308431.png) 为什么使用@Autowired 和使用ApplicationContext获取到的bean不是同一个实例

为什么Spring父容器对SpringMVC子容器中的bean是不可见的..?

``` 为什么Spring父容器对SpringMVC子容器中的bean是不可见的,而子容器对父容器的中bean却是可见的? ``` [文章截图来自:Spring-SpringMVC父子容器&AOP使用总结](http://tech.lede.com/2017/08/15/rd/server/SpringSpringMVCContainerAndAOPCommonMistakes/ "") ![图片说明](https://img-ask.csdn.net/upload/201809/11/1536624707_750719.png) ``` 如果是把Spring父容器与Spring MVC子容器比喻成平常的父类和子类,请说明为什么能比喻成父类和子类? ```

spring容器中bean不在同一个文件下的引用问题

一般情况下我们将bean定义在不同xml中,但是他们的文件名有着命名规则,例如: applicationContext-aaa.xml,这样我们就可以在web.xml文件中使用applicationContext-*.xml 来实现不同文件下的bean之间的相互引用,网上搜了搜说是他们最后会被整理成一个xml文件 那么我现在遇到的问题是:有一部分bean是在tailorbird-spring-hibernatedb.xml,在 web容器中申明过了,但是在Tomcat启动的时候applicationContext-aaa.xml中的bean 却不能引入tailorbird-spring-hibernatedb.xml中声明的bean,不知道是否是因为他们 的命名有问题的原因,希望得到大家的帮助,到底是怎么回事。。。

如何在jar包中使用到spring容器中的bean

这个jar包要使用到这个工程中的某个类,而这个类的配置是由spring管理,怎么在这个jar包中获取到这个bean

Spring 获取容器中Bean的问题

![![![![图片说明](https://img-ask.csdn.net/upload/201605/31/1464666006_675187.png)图片说明](https://img-ask.csdn.net/upload/201605/31/1464665994_492500.png)图片说明](https://img-ask.csdn.net/upload/201605/31/1464665983_666353.png)图片说明](https://img-ask.csdn.net/upload/201605/31/1464665972_776574.png) 我通过容器的getBean(x.class)方法取不到bean,但通过getBean("id/name");

关于Spring2.0中bean的作用域为prototype时容器的回收问题

总所周知,当spring容器中管理bean属性为singleton时,spring容器会管理该bean整个生命周期。 当bean的作用域为prototype时,每次调用到该bean都相当于重新new了一次,那么该bean的生命周期将由谁负责管理,JVM自动回收么?还是需要自己在哪写代码负责后续回收?

spring纯注解配置使用jdbcTemplate,无法获取spring容器中的bean

![这里是我dataSource的配置](https://img-ask.csdn.net/upload/201706/26/1498463533_601184.png) ![这是实现HomeDao接口的一个类](https://img-ask.csdn.net/upload/201706/26/1498463251_920085.png) ![这是出现的错误,我发现dataSrource和jdbcTemplate全部都是null,但是确实执行了DataSource配置的代码类。](https://img-ask.csdn.net/upload/201706/26/1498463294_32354.png)

springMVC项目中,在自定义的Listener中使用Spring容器管理的bean

在网上查看资料,普遍的说法是: 1.在web.xml中先配置spring的监听,再配自定义的监听器 2.小弟的配置web.xml中, 1)<context-param> <param-name>contextConfigLocation</param-name> <!-- 单进程部署 --> <param-value>classpath:spring/spring-main.xml</param-value> </context-param> 2)<listener> <description>spring监听器</description> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> 3)<listener> <description>web应用监听器</description> <listener-class>com.xx.listener.InitListener</listener-class> </listener> 4)<servlet> <description>spring mvc servlet</description> <servlet-name>springMvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <description>spring mvc 配置文件</description> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc/spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> 另外,在自定义监听器中,使用到 @Autowired private XXXService xxxService;这样spring自动注入进来的bean 小弟不才,问题到底出现在哪里?感谢各位大神了

自定义Listener怎样访问spring容器中的bean实例?

如果用 WebApplicationContextUtils 的 getWebApplicationContext 方法总是返回null,不知道怎么解决 网上有说在 web.xml 中加 ContextLoaderServlet ,但是我发现新版本spring中已经没有ContextLoaderServlet了

配置类中直接调用@Bean方法所返回的bean是否受spring容器管理?

``` @Bean public A getA() { return new A(); } // case 1: @Bean public B getB() { A a = getA(); return new B(a); } // case 2: @Bean public B getB(A a) { return new B(a); } ``` 看到好多代码都是case1的写法,自己调用getA()得到的A不就不受spring容器管理了吗? 不是应该case2的写法才正确吗?

如何在静态方法中使用Spring自动装载的bean?

在一个静态方法中要使用SpringIOC容器中的某个bean,但是Spring不支持自动装载静态变量(@Autowired)。这样就无法在静态方法中调用这个非静态的变量,应该怎么办?

tomcat容器与spring容器的关系?

请问tomcat容器与spring容器是父子关系吗,tomcat容器包含spring容器?

Spring在非web应用中为什么要关闭Spring IoC容器

如果你正在一个非web应用的环境下使用Spring的IoC容器,例如在桌面富客户端环境下,你想让容器优雅的关闭,并调用singleton bean上的相应析构回调方法,你需要在JVM里注册一个“关闭钩子”(shutdown hook)。这一点非常容易做到,并且将会确保你的Spring IoC容器被恰当关闭,以及所有由单例持有的资源都会被释放。 想请教一下什么时候关闭IOC,为什么要关闭IOC

如何在一个没有被spring管理的bean里面获取到spring里面的bean

如何在一个没有被spring管理的bean里面获取到spring里面的bean

Spring容器是在什么时候创建完成的?

Spring的容器是在什么时候启动的,用ApplicationContext手动加载和在web.xml中 配置<context-param>和<listener>有什么区别,还有bean是在什么时候生成的, 是在spring容器创建完成的时候就生成了还是在需要用的时候才会生成

使用动态代理生成的对象如何动态注入到spring容器?

使用动态代理生成的对象如何动态注入到spring? 如同mybatis的mapper接口自动生成代理类,亦如同spring data jpa生成接口实现类, 自己写了demo使用@Bean可以将生成的动态代理对象注入到spring容器,但无法动态的注入,求解?

关于spring bean销毁的问题

今天在熟悉spring bean的生命周期时发现bean的作用域定义为prototype时,通过((AbstractApplicationContext) context).registerShutdownHook()方法不能销毁,尝试用close方法也不能销毁,那么通过什么方法可以销毁呢? ``` HelloWorld helloWorld5 = (HelloWorld) context.getBean("helloworld"); helloWorld5.getMessage(); //((AbstractApplicationContext) context).registerShutdownHook(); ((AbstractApplicationContext) context).close(); ```

Spring 配置文件中自定义bean与自动装配功能的启动加载完成顺序

spring容器,先在配置文件中通过<util:list></util>创建了自定义bean,后又启用了自动装配功能 ,那么在启动时,先启动哪个?是先将配置文件中的内容加载完毕才去扫描指定的自动装配的包?还是先扫描包?如果 先扫描 包,那么如果包中有自动装配类在此时须要使用配置文件中自定义的bean,那会报错才对,为什么 用@Resource可以正常执行不行报错?而使用@Autowired 配合@Qualifier()却不行? 那么@Autowired 配合@Qualifier() 与使用@Resource有什么区别?(启动顺序) 代码 没在本机电脑,要明天才能上传。 如果有对相关问题比较熟悉的朋友还请给与解惑。 在此感谢关注此问题的朋友 。

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Vue + Spring Boot 项目实战(十九):Web 项目优化解决方案

快来一起探索如何打脸我们的破项目,兄弟姐妹们把害怕打在公屏上!

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection&lt;? ...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解! 目录 博客声明 大数据了解博主粉丝 博主的粉丝群体画像 粉丝群体性别比例、年龄分布 粉丝群体学历分布、职业分布、行业分布 国内、国外粉丝群体地域分布 博主的近期访问每日增量、粉丝每日增量 博客声明 因近期博主写专栏的文章越来越多,也越来越精细,逐步优化文章。因此,最近一段时间,订阅博主专栏的人数增长也非常快,并且专栏价

一个HashMap跟面试官扯了半个小时

一个HashMap能跟面试官扯上半个小时 关注 安琪拉的博客 1.回复面试领取面试资料 2.回复书籍领取技术电子书 3.回复交流领取技术电子书 前言 HashMap应该算是Java后端工程师面试的必问题,因为其中的知识点太多,很适合用来考察面试者的Java基础。 开场 面试官: 你先自我介绍一下吧! 安琪拉: 我是安琪拉,草丛三婊之一,最强中单(钟馗不服)!哦,不对,串场了,我是**,目...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

工作八年,月薪60K,裸辞两个月,投简历投到怀疑人生!

近日,有网友在某职场社交平台吐槽,自己裸辞两个月了,但是找工作却让自己的心态都要崩溃了,全部无果,不是已查看无回音,就是已查看不符合。 “工作八年,两年一跳,裸辞两个月了,之前月薪60K,最近找工作找的心态崩了!所有招聘工具都用了,全部无果,不是已查看无回音,就是已查看不符合。进头条,滴滴之类的大厂很难吗???!!!投简历投的开始怀疑人生了!希望 可以收到大厂offer” 先来看看网...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

程序员是做全栈工程师好?还是专注一个领域好?

昨天,有位大一的同学私信我,说他要做全栈工程师。 我一听,这不害了孩子么,必须制止啊。 谁知,讲到最后,更确定了他做全栈程序员的梦想。 但凡做全栈工程师的,要么很惨,要么很牛! 但凡很牛的,绝不是一开始就是做全栈的! 全栈工程师听起来好听,但绝没有你想象的那么简单。 今天听我来给你唠,记得帮我点赞哦。 一、全栈工程师的职责 如果你学习编程的目的只是玩玩,那随意,想怎么学怎么学。...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

用了这个 IDE 插件,5分钟解决前后端联调!

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!作者 |李海庆我是一个 Web 开发前端工程师,受到疫情影响,今天是我在家办公的第78天。开发了两周,...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

Java14 新特性解读

Java14 已于 2020 年 3 月 17 号发布,官方特性解读在这里:https://openjdk.java.net/projects/jdk/14/以下是个人对于特性的中文式...

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

工作两年简历写成这样,谁要你呀!

作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 最近有伙伴问小傅哥,我的简历怎么投递了都没有反应,心里慌的很呀。 工作两年了目前的公司没有什么大项目,整天的维护别人的代码,有坑也不让重构,都烦死了。荒废我一身技能无处施展,投递的简历也没人看。我是不动物园里的猩猩,狒狒了! 我要加班,我要996,我要疯狂编码,求给我个机会… ...

相关热词 c#跨线程停止timer c#批量写入sql数据库 c# 自动安装浏览器 c#语言基础考试题 c# 偏移量打印是什么 c# 绘制曲线图 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行
立即提问