Här är en länk till en artikel som jag tror är det du letar efter http://michaelbarnesjr.wordpress.com/2012/01/19/spring-data-mongo/
Nyckeln är att tillhandahålla flera mallar
konfigurera en mall för varje databas.
<bean id="vehicleTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg ref="mongoConnection"/>
<constructor-arg name="databaseName" value="vehicledatabase"/>
</bean>
konfigurera en mall för varje databas.
<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 måste du berätta för Spring var dina förvar finns så att den kan injicera dem. De måste alla finnas i samma katalog. Jag försökte ha dem i olika underkataloger, och det fungerade inte korrekt. Så de finns alla i förvarskatalogen.
<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>
Varje förråd är ett gränssnitt och skrivs enligt följande (ja, du kan lämna dem tomma):
@Repository
public interface ImageRepository extends MongoRepository<Image, String> {
}
@Repository
public interface TruckRepository extends MongoRepository<Truck, String> {
}
Namnet på den privata variabeln imageRepository
är samlingen! Image.java kommer att sparas i bildsamlingen i imagedb-databasen.
Så här kan du hitta , infoga och ta bort poster:
@Service
public class ImageService {
@Autowired
private ImageRepository imageRepository;
}
Genom Autowiring matchar du variabelnamnet med namnet (id) i din konfiguration.