一、创建用户
1.创建管理员
2.授权认证
3.给使用的数据库增加用户
具体在windows上操作步骤:
1.输入 mongo
2.输入 use admin
3.输入 db.createUser({user:"admin",pwd:"123456",roles:["root"]})
4.输入 db.auth("admin":"root")
5.输入 use test
6.输入 db.createUser({user:"root",pwd:"123456",roles:[{ role:"dbOwner",db:"test" }]})
用户就创建完成了
创建数据库
直接 输入 use 数据库名
就可以创建表了 创建user表插入一条数据
创建表db.user.save({ "id":1, "name":"array","age":18 })
保存多条数据: db.user.save( {数据 } ,{ 。。。。},{ 数据 })
查询表: db.user.find() //查询所有
更新数据db.user.updata({修改的对象标识},{修改内容})
例如: db.user.updata({“id”:1},{“name”:”array“})//将id为1的内容修改为“name”:”array“
这样很不友好,会将整条数据都给修改,不只是修改name这个属性,其他会被删除
只修改指定属性:
db.user.update({“id”:1},{$set:{ “name”:”array“ }}) //只将这条数据的name的值进行修改
删除数据: db.user.remove({ 条件 }) 指定删除数据
删除所有数据:db.user.drop()
删除数据库 : db.dropDataBase()
二、java操作数据库
1.不需要密码:
public static MongoCollection<Document> Connect(String database,String table) {
MongoClientOptions option=MongoClientOptions.builder().connectTimeout(60000).build();
MongoClient monGoClient=new MongoClient(new ServerAddress("127.0.0.1",27017),option);
//获取操作数据库
MongoDatabase db=monGoClient.getDatabase(database);
//获取集合。后面的操作,大部分都是基于集合操作
MongoCollection<Document> contections =db.getCollection(table);
return contections;
}
public static void main(String[] args) {
MongoCollection<Document> collection = Connect("test","person");
FindIterable<Document> findIterable = collection.find();
MongoCursor<Document> cursor = findIterable.iterator();
while (cursor.hasNext()) {
System.out.println(cursor.next());
}
}
2.需要密码:
public static void main(String[] args) {
//用户名密码登录
//服务器地址 和 端口
ServerAddress serverAddress = new ServerAddress("127.0.0.1",27017);
List<ServerAddress> serverList = new ArrayList<ServerAddress>();
serverList.add(serverAddress);
//用户名 数据库名称 密码
MongoCredential credential = MongoCredential.createScramSha1Credential("root", "test", "123456".toCharArray());
List<MongoCredential> credentialList = new ArrayList<MongoCredential>();
credentialList.add(credential);
//通过认证连接MongoDB
MongoClient mongoClient = new MongoClient(serverList,credentialList);
//连接数据库
MongoDatabase mongoDatabase = mongoClient.getDatabase("test");
System.out.println("连接数据库的名称:"+mongoDatabase.getName());
// //获取集合
MongoCollection mongoCollection = mongoDatabase.getCollection("person");
System.out.println("获取的集合是:"+mongoCollection.toString());
System.out.println(mongoCollection.getNamespace());
Document dMap = new Document();
dMap.append("id",5);
dMap.append("name","hehhe");
dMap.append("age",15);
mongoCollection.insertOne(dMap);
FindIterable<Document> findIterableMap = mongoCollection.find();
MongoCursor<Document> mongoCursorMap = findIterableMap.iterator();
System.out.println("开始======");
while(mongoCursorMap.hasNext()){
System.out.println(mongoCursorMap.next().toJson());
}
}