You can store it anywhere you want; in a session, application context, or as a field in a servlet itself. Just remember to make it immutable, since you are dealing with a multi-threaded environment, and your servlet will be called several times in a row.
Edit: As Bojo noted, using a session might not be the best option, so you should evaluate your needs before placing your singleton in a session.
source share