Автоматическое подключение Spring с использованием @Configurable

Я играю с идеей использования Spring @Configurable и @Autowire для внедрения DAO в объекты домена, чтобы они не требуется прямого знания уровня сохраняемости.

Я пытаюсь следовать http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/aop.html # aop-atconfigurable , но мой код, похоже, не действует.

В основном у меня есть:

@Configurable
public class Artist {

    @Autowired
    private ArtistDAO artistDao;

    public void setArtistDao(ArtistDAO artistDao) {
        this.artistDao = artistDao;
    }

    public void save() {
        artistDao.save(this);
    }

}

И:

public interface ArtistDAO {

    public void save(Artist artist);

}

и

@Component
public class ArtistDAOImpl implements ArtistDAO {

    @Override
    public void save(Artist artist) {
        System.out.println("saving");
    }

}

В application-context.xml у меня есть:





    
    


Сканирование пути к классам и инициализация выполняется модулем spring для Play! framework, хотя другие компоненты с автоматическим подключением работают, поэтому я уверен, что это не основная причина. Я использую Spring 3.0.5.

В другом коде (внутри метода в bean-компоненте, который вводится в мой контроллер с помощью Spring, Не работает db.my_collection.find ({baz: {a: 1, b: 2}); Я ...

У меня есть эта структура в моей коллекции:

{foo : 1, bar : 4, baz : {a : 1, b : 2 ,c : "fafofu"}}

Как мне найти "a" и "b" внутри baz? Не работает db.my_collection.find ({baz: {a: 1, b: 2});

Меня не волнует, является ли «c» «фафофу» или «какоку» нет имеет значение.

9
задан Mantovani 16 January 2011 в 01:15
поделиться