Ho una struttura MongoDB come questo:
record = { 'field': 'value',
'field2': 'value2',
'events' : [ { 'event1': 1 }, { 'event2' : 2 }]
}
Sto usando il pacchetto primavera dati MongoDB per accedere a questi dati. Ci saranno principalmente scritture sui dati, quindi mi piacerebbe usare la funzionalità nativa "$ push" per aggiungere "eventi" al "record", ma non riesco a capire come farlo con MongoRepository senza recuperare l'intero record e poi spingendolo e salvandolo di nuovo?
Quando si utilizza MongoRepository, non si ha mai realmente un'implementazione concreta. Primavera si occupa di tutto sulla base di annotazioni oi nomi dei metodi stessi
UPDATE
Sarebbe il modo corretto per essere quello di implementare un metodo personalizzato sul repository e quindi utilizzare MongoTemplate farlo manualmente?
Esempio:
FooRepository.java
public interface FooRepository extends
CrudRepository<Foo, ObjectId>,
AppointmentWarehouseRepositoryCustom {
}
FooRepositoryCustom.java
public interface AppointmentWarehouseRepositoryCustom {
public void pushMethod();
}
FooRepositoryImpl.java
public class FooRepositoryImpl implements
AppointmentWarehouseRepositoryCustom {
@Autowired
protected MongoTemplate mongoTemplate;
public void pushMethod() {
// Push methods here.
}
}
E possiamo inserire un oggetto in un elenco contrassegnato come @DBRef? – javadev
Ti è capitato per caso di inserire una raccolta @DBRef? – javadev