Should service layer classes be singletons?

oym picture oym · Jan 31, 2010 · Viewed 30.1k times · Source

I am using Spring framework. Should my service classes be created as singletons? Can someone please explain why or why not? Thanks!

Answer

Bozho picture Bozho · Jan 31, 2010

Yes, they should be of scope singleton. Services should be stateless, and hence they don't need more than one instance.

Thus defining them in scope singleton would save the time to instantiate and wire them.

singleton is the default scope in spring, so just leave your bean definitions as they are, without explicitly specifying the scope attribute.

You can read more about scopes in the spring docs.