Поскольку вы ограничены Java 1.4, если вы хотите DI, тогда Spring будет очень приличным вариантом. DI полезен только в тех местах, где параметры конструктора - это службы или что-то, что не меняется во время выполнения.
Если у вас есть все эти разные конструкторы из-за того, что вам нужны переменные параметры, как построить объект, вы должны серьезно рассмотреть использование шаблона Builder.