|
@@ -63,6 +63,7 @@ public class InMongoServiceImpl extends InBaseService implements IInMongoService
|
|
|
if ("1".equals(sharding)) {
|
|
|
//判断是否分片集群
|
|
|
sharding(host, port, filaName);
|
|
|
+ return;
|
|
|
}
|
|
|
}
|
|
|
try {
|
|
@@ -94,12 +95,12 @@ public class InMongoServiceImpl extends InBaseService implements IInMongoService
|
|
|
private void sharding(String host, String port, String filename) {
|
|
|
File file = new File(filename);
|
|
|
BSONDecoder decoder = new BasicBSONDecoder();
|
|
|
- MongoClient mongoClient = new MongoClient("192.168.188.62", 27017);
|
|
|
- List<String> dbs = new ArrayList<>();
|
|
|
- for (String db : mongoClient.listDatabaseNames()) {
|
|
|
- dbs.add(db);
|
|
|
- }
|
|
|
- try (InputStream inputStream = new BufferedInputStream(new FileInputStream(file))) {
|
|
|
+
|
|
|
+ try (InputStream inputStream = new BufferedInputStream(new FileInputStream(file)); MongoClient mongoClient = new MongoClient(host, Integer.parseInt(port));) {
|
|
|
+ List<String> dbs = new ArrayList<>();
|
|
|
+ for (String db : mongoClient.listDatabaseNames()) {
|
|
|
+ dbs.add(db);
|
|
|
+ }
|
|
|
while (inputStream.available() > 0) {
|
|
|
|
|
|
BSONObject obj = decoder.readObject(inputStream);
|
|
@@ -113,8 +114,11 @@ public class InMongoServiceImpl extends InBaseService implements IInMongoService
|
|
|
}
|
|
|
String[] nss = ns.split("\\.");
|
|
|
if (!dbs.contains(nss[0])) {
|
|
|
- MongoDatabase mdb = mongoClient.getDatabase("admin");
|
|
|
- mdb.runCommand(new Document("enablesharding", nss[0]));
|
|
|
+ try {
|
|
|
+ MongoDatabase mdb = mongoClient.getDatabase("admin");
|
|
|
+ mdb.runCommand(new Document("enablesharding", nss[0]));
|
|
|
+ } catch (Exception e) {
|
|
|
+ }
|
|
|
}
|
|
|
MongoDatabase database = mongoClient.getDatabase(nss[0]);
|
|
|
MongoCollection<BasicBSONObject> collection = database.getCollection(nss[1], BasicBSONObject.class);
|