Следующий код предназначен для создания столбца поиска в моем проекте. Но я очень сомневаюсь в эффективности кода, поскольку он довольно длинный. Есть ли способ выполнить задачу, связанную с кодом, с уменьшенным числом строк кода?Сократить исходный код java
package kelas_java;
public class searchingDariSemuaKolom {
public static void main(String[] args) {
BasicDBObject sortOrder = new BasicDBObject();
MongoClient mongoClient;
DB db;
DBCollection table, table2;
DBCursor cur = null, cur2 = null;
try {
mongoClient = new MongoClient("localhost", 27017);
db = mongoClient.getDB("face");
boolean auth = db.authenticate("aku", "kamu".toCharArray());
Pattern regex = Pattern.compile("1");
//start1
table = db.getCollection("titles");
DBObject clause1 = new BasicDBObject("link", regex);
DBObject clause2 = new BasicDBObject("title", regex);
DBObject clause3 = new BasicDBObject("body", regex);
DBObject clause4 = new BasicDBObject("date", regex);
BasicDBList or1 = new BasicDBList();
or1.add(clause1);
or1.add(clause2);
or1.add(clause3);
or1.add(clause4);
DBObject query = new BasicDBObject("$or", or1);
cur = table.find(query);
while (cur.hasNext()) {
System.out.println(cur.next().get("title"));
}
//end1
//start2
table2 = db.getCollection("news");
DBObject clause5 = new BasicDBObject("link", regex);
DBObject clause6 = new BasicDBObject("title", regex);
DBObject clause7 = new BasicDBObject("body", regex);
DBObject clause8 = new BasicDBObject("date", regex);
BasicDBList or2 = new BasicDBList();
or2.add(clause1);
or2.add(clause2);
or2.add(clause3);
or2.add(clause4);
DBObject query2 = new BasicDBObject("$or", or2);
cur2 = table2.find(query2);
while (cur2.hasNext()) {
System.out.println(cur2.next().get("title"));
}
//end2
} catch (Exception ex) {
} finally {
cur.close();
cur2.close();
}
}
}
благодаря спариванию, она SucceS, вы помогли мне много ... я понимание об использовании метода, но я никогда не пытаюсь сделать код укоротить, чем раньше :) – beboy
это мое удовольствие, удачи бро. –