У меня есть объект Java, который использует одноэлементный (например, где-то в коде объекта Singleton.getInstance()
). Я перехожу к использованию инъекции зависимостей (Dagger 2), и стандартным способом сделать это было бы создание фабрики для этого класса, чтобы DI-инфраструктура ввела один синглтон в заводскую установку, и фабрика передала синглтон на конструктор объекта (вместе с другими аргументами), который сохранит его в переменной-члене.Удаление десериализации объекта с зависимостями
Но этот объект является сериализуемым. Маркировка переменной-члена, содержащей singleton transient
, позволяет выполнять сериализацию, но когда объект десериализуется, переменная-член имеет значение null
. Каков наилучший способ вернуть зависимость после десериализации?
Возможный дубликат [Как сериализовать статические элементы данных класса Java?] (Http://stackoverflow.com/questions/1008023/how-to-serialize-static-data-members-of-a-java- класс) – Paul