Как я могу получить доступ к различным репозиториям, указывающим на другую коллекцию, используя один и тот же dao? - PullRequest
0 голосов
/ 23 ноября 2018

Я использую два репозитория, указывающих на две коллекции Mongo A и B. Оба используют один и тот же dao.

Пример:

**First repository:**
@Repository
@Document(collection="A")
public interface Repository1 extends MongoRepository<Object1, String>
{   
    @Query("{'userActionInfo.createdBy' : ?0 }")
    List<Object> fetchAllByCreatedUser(String userId);
}

**Second repository:**
@Repository
@Document(collection="B")
public interface Repository2 extends MongoRepository<Object1, String>
{

    @Query("{'userActionInfo.createdBy' : ?0 }")
    List<Object> fetchAllByCreatedUser(String userId);
}

**DAO:**
public class Object implements Auditable,Serializable 
{
    private static final long serialVersionUID = -2802725098896112551L;
    @Id 
    private String Id;  
    private String Name;
}

**Service**
public Object save(Object obj) throws Exception {
if (obj.Id() > 1)
    {
        obj.setSomething("Yes");
        updated = Repository2.save(obj);
    }else{
        obj.setSomething("No");
        original = Repository1.save(obj);
}
return obj;

Я автоматически подключил оба репозитория в сервисе. IЯ использую вышеуказанный объект для доступа / сохранения данных в службе, но я не могу сохранить / получить доступ к данным в соответствующих коллекциях. Есть предложения, где я ошибаюсь?

Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...