Spring Dependency Injection в сериализуемые bean-компоненты

I иметь класс обслуживания, который не является сериализуемым, и bean-компонент, который должен быть сериализуемым, но должен иметь доступ к этому классу обслуживания:

class SomeBean implements Serializable
{
    private StuffFactory factory;

    @Autowired
    public SomeBean(StuffFactory factory)
    {
        this.factory = factory;
    }

    public getOther()
    {
        return this.factory.getSomeOtherStuff();
    }
}

Это явно не работает, потому что теперь класс SomeBean больше не сериализуемый. Как правильно решить эту проблему весной? Когда я делаю поле factory переходным процессом, тогда я теряю внедренный экземпляр factory при десериализации, или нет? И когда я сделаю StuffFactory также сериализуемым, тогда этот класс больше не будет синглтоном, потому что каждый экземпляр SomeBean будет иметь свою собственную фабрику после десериализации.

6
задан kayahr 14 October 2011 в 05:58
поделиться