Это, безусловно, будет работать. Просто будьте осторожны, используя любой синглтон, чтобы не злоупотреблять им. Прочитайте ответ на этот вопрос , объясняющий, почему ApplicationContext редко (хотя иногда) является подходящим контекстом для использования.
Кроме того, наличие ApplicationContext, доступного повсеместно, позволяет вам быть более неаккуратным в том, как вы организуете свои классы, поскольку вам не нужно думать о том, какая функциональность действительно нуждается в ApplicationContext, и нужно ли вам это учитывать и т. Д. Это просто может быть, в зависимости от того, насколько ты дисциплинирован.
Я всегда довольно настороженно отношусь к синглетам, хотя другие известные люди не согласны, но я все еще довольно широко обсуждаю, являются ли синглеты образцом или антипаттерном. Если вы используете Google singleton и anti-pattern, вы найдете такие статьи, как this , которые, на мой взгляд, дают довольно хорошие результаты.