public static void main(String[] args) throws UnknownHostException {
DB db = getDBByName("192.168.1.170",27019,"TESTDB");
// 删除数据库对象
// m.dropDatabase("test");
//m.dropDatabase("TESTDB1");
// m.dropDatabase("TESTDB");
// 获取所有数据库名称列表
List<String> dbNameList = getAllDBName("192.168.1.170",27019);
for (String s : dbNameList) {
System.out.println("所有的数据库" + s + "======");
}
// 增加一个用户,密码需转换成字符数据
db.addUser("admin", "123456".toCharArray());
// 验证数据库用户名密码
System.out.println("用户验证:" + db.authenticate("admin", "123456".toCharArray()));
// 得到一个集合,可对这个集合进行CRUD操作
DBCollection coll = db.getCollection("adminCollection");
// 统计adminCollection集合中文档数量
System.out.println("统计adminCollection集合中文档数量 " + coll.getCount());
// 用到内部文档组装数据,然后用集合的insert方法插入
DBObject object = new BasicDBObject();
object.put("picName", "mypic.jpg");
object.put("content", "ssssssssss");
coll.insert(object);
for (int i = 0; i < 10; i++) {
coll.insert(new BasicDBObject().append("i", i));
}
// 使用findOne()查找集合中第一个文档
DBObject myDoc = coll.findOne();
System.out.println("the first result----" + myDoc);
// 查询,相当于字段--值的关系
DBObject dbObject = new BasicDBObject();
dbObject.put("picName", "d:\\pic\\test\\1.jpg");
// dbObject.put("_id","c5605578414d384b5e4cc200");
DBCursor curs = coll.find(dbObject);
while (curs.hasNext()) {
System.out.println("query result-------" + curs.next().get("_id").toString());
}
// //删除集合中所有的数据
// DBObject toRemoveObject = new BasicDBObject();
// dbObject.put("i", 0);
// coll.remove(toRemoveObject);
// 删除集合中某个文档数据
DBObject toRemoveObject = new BasicDBObject();
toRemoveObject.put("i", 5);
DBObject ob = coll.findOne(toRemoveObject);
if (ob != null) {
System.out.println("---to remove-------" + ob);
coll.remove(ob);
}
// coll.remove(new BasicDBObject().append("i", 1));
// 使用光标(cursor)来获取当前集合中全部文档
DBCursor cur = coll.find();
while (cur.hasNext()) {
System.out.println("------" + cur.next());
}
// 为当前集合相应属性创建索引,指定升序(1)或降序(-1)。
coll.createIndex(new BasicDBObject("user", 1));
// 获取索引列表
List<DBObject> indexList = coll.getIndexInfo();
for (DBObject o : indexList) {
System.out.println("index ---------" + o);
} // 用DBObject存储JAVA对象
DBCollection collection = db.getCollection("MemberCollection");
}
/**
* 获得数据库
* @param ip
* @param prot
* @param databaseName
* @return
* @throws UnknownHostException
* @throws MongoException
*/
public static DB getDBByName(String ip, int prot, String dbName) throws UnknownHostException, MongoException{
//连接mongodb服务器,获得mongo对象
Mongo m = new Mongo(ip, prot);
// 获取数据库对象,如果没TESTDB数据库,自动创建一个
return m.getDB(dbName);
}
/**
* 获得实例下的所有数据库名字
* @param ip
* @param prot
* @return
* @throws UnknownHostException
* @throws MongoException
*/
public static List<String> getAllDBName(String ip, int prot) throws UnknownHostException, MongoException{
//连接mongodb服务器,获得mongo对象
Mongo m = new Mongo(ip, prot);
return m.getDatabaseNames();
}
|