• Post Reply Bookmark Topic Watch Topic
  • New Topic

How to start a "daemon thread" in a Spring application

 
Arthur Kopatsy
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

I am new to both Spring and java in general and here is what I want to do.
I have a message bus internally, where events are posted and I need a thread that will be listening on this bus.
This thread must have access to the other beans (to update the DB for instance).

Here is my problem:
I am planning to use Spring for the dependency injection including for my "daemon bean". However, it looks like I need to use a contextlistener to start up my thread. If I understand this correctly, I will not be able to leverage the dependency injection if I start my thread this way.

My question is therefore the following:
How to start a long living thread at application startup time in a Spring application?

Your help would be greatly appreciated.

Thanks,

Arthur
 
Mark Spritzler
ranger
Sheriff
Posts: 17309
11
IntelliJ IDE Mac Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
To Be honest, your best solution is to use Spring Integration or Spring JMS. Both have the ability to create a Channel/Queue which you can have a POJO bean listening in on that channel. so whenever something is placed on the channel, the code will run.

Check out the documentation for both at www.springframework.org

THanks

Mark
 
Happiness is not a goal ... it's a by-product of a life well lived - Eleanor Roosevelt. Tiny ad:
the new thread boost feature: great for the advertiser and smooth for the coderanch user
https://coderanch.com/t/674455/Thread-Boost-feature
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!