MongoDB配置
<mongo:mongo-client id="mongo_secondary" replica-set="${mongodb.replSet}">
<mongo:client-options socket-keep-alive="true"/>
</mongo:mongo-client>
<mongo:db-factory id="mongoDbFactory" dbname="${mongodb.dbs}" mongo-ref="mongo_secondary"/>
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory"/>
</bean>
MongoDB读取数据
@Service
public class MongoDbService {
@Autowired
private MongoTemplate mongoTemplate;
// 获取单个Document
public DBObject getOneDocument(String collectionName, Map map){
DBObject o1 = new BasicDBObject(map);
return getCollections(collectionName).findOne(o1);
}
// 获取多个Document
public List<DBObject> getDocuments(String collectionName, Map map){
DBObject o1 = new BasicDBObject(map);
return getCollections(collectionName).find(o1).toArray();
}
// 获取整个collection
private DBCollection getCollections(String collectionName){
return mongoTemplate.getCollection(collectionName);
}
}
collection相当于一张表,document相当于一行数据