Hier is een link naar een artikel dat volgens mij is wat u zoekt http://michaelbarnesjr.wordpress.com/2012/01/19/spring-data-mongo/
De sleutel is om meerdere sjablonen aan te bieden
configureer een sjabloon voor elke database.
<bean id="vehicleTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongoConnection"/>
<constructor-arg name="databaseName" value="vehicledatabase"/>
</bean>
configureer een sjabloon voor elke database.
<bean id="imageTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongoConnection"/>
<constructor-arg name="databaseName" value="imagedatabase"/>
</bean>
<bean id="vehicleTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongoConnection"/>
<constructor-arg name="databaseName" value="vehicledatabase"/>
</bean>
Nu moet je Spring vertellen waar je repositories zijn, zodat het ze kan injecteren. Ze moeten allemaal in dezelfde directory staan. Ik heb geprobeerd ze in verschillende submappen te plaatsen, maar het werkte niet correct. Dus ze staan allemaal in de repository directory.
<mongo:repositories base-package="my.package.repository">
<mongo:repository id="imageRepository" mongo-template-ref="imageTemplate"/>
<mongo:repository id="carRepository" mongo-template-ref="vehicleTemplate"/>
<mongo:repository id="truckRepository" mongo-template-ref="vehicleTemplate"/>
</mongo:repositories>
Elke repository is een interface en is als volgt geschreven (ja, je kunt ze leeg laten):
@Repository
public interface ImageRepository extends MongoRepository<Image, String> {
}
@Repository
public interface TruckRepository extends MongoRepository<Truck, String> {
}
De naam van de privévariabele imageRepository
is de collectie! Afbeelding.java wordt opgeslagen in de afbeeldingsverzameling in de imagedb-database.
Hier is hoe je kunt vinden , invoegen , en verwijderen records:
@Service
public class ImageService {
@Autowired
private ImageRepository imageRepository;
}
Door Autowiring stemt u de naam van de variabele af op de naam (id) in uw configuratie.