คู่มือ Java Connection to MongoDB สำหรับ ฐานข้อมูล
คู่มือนี้เรียบเรียงสำหรับ Ruk-Com PaaS หน้าจอและตัวเลือกอาจแตกต่างตามเวอร์ชันและสิทธิ์ของบัญชี
ตรวจสอบ Environment, Region, สิทธิ์บัญชี และสำรองค่าปัจจุบันก่อนดำเนินการกับระบบจริง
คำสั่ง ชื่อเมนู พารามิเตอร์ และค่าตัวอย่างในกรอบ Code คงรูปแบบตามระบบเพื่อให้คัดลอกและตรวจสอบได้ถูกต้อง
MongoDBเป็นหนึ่งในฐานข้อมูล NoSQL ที่ได้รับความนิยมมากที่สุดซึ่งสามารถใช้งานได้ง่ายภายในแพลตฟอร์มในคู่มือนี้เราจะแสดงวิธีเชื่อมต่ออินสแตนซ์นี้กับแอปของคุณและดำเนินการง่ายๆบางอย่าง
สร้าง Environment
-
เข้าสู่ระบบบัญชี PaaS ของคุณ
-
สร้าง EnvironmentกับMongoDBอินสแตนซ์ (มีอยู่ในNoSQLส่วน). เซิร์ฟเวอร์แอปพลิเคชันที่ต้องการสำหรับแอปของคุณที่จะปรับใช้สามารถอยู่ใน Environment เดียวกันหรือแยกต่างหาก (ตามตัวอย่างเราได้เพิ่มแมวตัวผู้):
คลิกสร้างและรอสองสามนาทีเพื่อให้ Environment ของคุณปรากฏที่แดชบอร์ด
การกำหนดค่า MongoDB
- ตรวจสอบกล่องจดหมายอีเมลของคุณ - ควรมีข้อความพร้อมรายละเอียดฐานข้อมูล:
2. คลิกที่เปิดในเบราว์เซอร์ปุ่มสำหรับMongoDBNode ภายในแดชบอร์ดของคุณหรือใช้URL การเข้าถึงจากอีเมลเพื่อเข้าถึงแผงผู้ดูแลระบบฐานข้อมูล
เข้าสู่ระบบโดยใช้ข้อมูลประจำตัวดังกล่าวข้างต้น
- สร้างฐานข้อมูลใหม่โดยสลับไปที่ฐานข้อมูลแท็บแล้วพิมพ์กชื่อสำหรับมัน (เช่นmongodb-เชื่อมต่อ) ภายในสร้างฐานข้อมูลรูปร่าง.
- ถัดไปคุณต้องสร้างผู้ใช้สำหรับฐานข้อมูลนี้ - ดังนั้นให้ไปที่ดำเนินการและเลือกฐานข้อมูลที่คุณสร้างขึ้นใหม่ผ่านรายการแบบเลื่อนลงที่เกี่ยวข้อง
จากนั้นพิมพ์คำสั่งต่อไปนี้ภายในกรอบอินพุตด้านบน:
db.createUser({ ผู้ใช้: “ชื่อผู้ใช้”, แจ้ง: “รหัสผ่าน”, บทบาท:[{ บทบาท: “readWrite”, db: “db_name”}]})
ที่ไหน:
- ชื่อผู้ใช้- ชื่อที่ต้องการของผู้ใช้ DB ใหม่ของคุณ
- รหัสผ่าน- รหัสผ่านสำหรับผู้ใช้รายนี้
- db_name- ชื่อของฐานข้อมูลที่ผู้ใช้สร้างขึ้นใหม่จะได้รับอ่าน/เขียนสิทธิ์สำหรับ
หลังจากนั้นให้คลิกที่ดำเนินการและรอการตอบกลับสำเร็จ
- ตอนนี้กลับไปที่แดชบอร์ดและสร้างไฟล์แยกต่างหากสำหรับจัดเก็บข้อมูลการเชื่อมต่อฐานข้อมูล
บันทึก:ที่คุณสามารถระบุทั้งหมดที่จำเป็นสำหรับข้อมูลการเชื่อมต่อได้โดยตรงในโค้ดของคุณ (แอปพลิเคชัน) ในตัวอย่างที่กำหนดเราใส่การตั้งค่าเหล่านี้ลงในไฟล์ซึ่งแอปพลิเคชันทดสอบของเราอ่านได้ (แสดงอยู่ในส่วนคำแนะนำถัดไป)
คลิกที่การกำหนดค่าปุ่มถัดจากเซิร์ฟเวอร์แอปพลิเคชันของคุณใน Environment ที่เกี่ยวข้อง (แมวตัวผู้ในกรณีของเรา)
ในแท็บที่เปิดอยู่ให้สร้างแท็บใหม่mydb.cfgไฟล์ภายในบ้านไดเรกทอรีและระบุสตริงต่อไปนี้ที่นั่น:
สำเนา
host={db_access_url}
dbname={db_name}
user={user_name}
password={password}
- {db_access_url}- เชื่อมโยงไปยังแผงผู้ดูแลระบบฐานข้อมูล (ค้นหาได้ในอีเมลที่เกี่ยวข้องหรือคลิกเปิดในเบราว์เซอร์ถัดจากของคุณMongoDBNode และคัดลอกจากแถบที่อยู่) โดยไม่ต้องhttps://ส่วนหนึ่ง
- {db_name}- ชื่อของฐานข้อมูลที่สร้างขึ้น (mongodb-เชื่อมต่อในกรณีของเรา)
- {ชื่อผู้ใช้}- ชื่อของผู้ใช้ DB ที่คุณกำหนดให้กับฐานข้อมูลนี้ (ดีบัสเซอร์ในกรณีของเรา)
- {รหัสผ่าน}- รหัสผ่านของผู้ใช้ที่เกี่ยวข้อง
อย่าลืมที่จะบันทึกการเปลี่ยนแปลง
การ Deploy แอปพลิเคชัน
- ตอนนี้คุณสามารถปรับใช้โปรเจ็กต์ของคุณกับ Environment ที่เตรียมไว้ได้แล้ว
ตามตัวอย่างนี่คือโค้ดของแอปพลิเคชันของเราซึ่งมีจุดประสงค์เพื่อทดสอบการเชื่อมต่อกับ Node MongoDB ของเรา
MongoManager.java
จาวาคัดลอก
package example;
import com.mongodb.*;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.Date;
import java.util.Properties;
public class MongoManager {
static String host, dbname, user, password;
public void addData(int repeats) {
try {
Properties prop = new Properties();
prop.load(new FileInputStream(System.getProperty("user.home") + "/mydb.cfg"));
host = prop.getProperty("host").toString();
dbname = prop.getProperty("dbname").toString();
user = prop.getProperty("user").toString();
password = prop.getProperty("password").toString();
System.out.println("host: " + host + "\ndbname: " + dbname + "\nuser: " + user + "\npassword: " + password);
MongoCredential credential = MongoCredential.createCredential(user, dbname, password.toCharArray());
MongoClient mongoClient = new MongoClient(new ServerAddress(host), Arrays.asList(credential));
MongoDatabase db = mongoClient.getDatabase(dbname);
try {
db.getCollection("mycollection");
} catch (Exception e) {
db.createCollection("mycollection", null);
System.out.println("Repeats: " + repeats);
for (int i = 1; i <= repeats; i++) {
Document document = new Document("data", new Date());
db.getCollection("mycollection").insertOne(document);
System.out.println("INFO: row added " + document);
}
} finally {
mongoClient.close();
}
} catch (IOException ex) {
}
}
}
- แอปพลิเคชันใดๆก็สามารถปรับใช้ได้โดยใช้แพลตฟอร์มใดก็ได้ผู้จัดการฝ่ายปรับใช้(โดยมีไฟล์ในเครื่อง/URL เป็นแหล่งที่มา) หรือมาเวน(สำหรับการ Deploy จาก GIT/SVN)
สำหรับการทดสอบคุณสามารถลองใช้แบบพร้อมใช้งานของเราได้mongoclient.warโปรเจ็กต์ซึ่งมีไดรเวอร์ตัวเชื่อมต่อที่เหมาะสมอยู่แล้ว (หรือดาวน์โหลดแหล่งที่มาและปรับแต่งตามต้องการ)
บันทึก:ในการเชื่อมต่อโปรเจ็กต์ของคุณเองกับฐานข้อมูล MongoDB คุณต้องอัปโหลดไฟล์ที่เหมาะสมmongo-java-driver.ไหห้องสมุดไปยังwebapps/{app_context}/WEB-INF/libโฟลเดอร์ของเซิร์ฟเวอร์แอปของคุณด้วยแอปพลิเคชันที่ปรับใช้
- ด้วยเหตุนี้คุณจะได้รับ Environment ที่คล้ายคลึงกับ Environment ด้านล่าง:
ตรวจสอบการเชื่อมต่อ
- คลิกเปิดในเบราว์เซอร์ถัดจาก Environment ของคุณด้วยแอปตัวอย่างของเราที่ปรับใช้คุณจะเห็นหน้าต่างใหม่เปิดขึ้นด้วยความเรียบง่ายผู้จัดการ MongoDBแบบฟอร์มที่แสดง
พิมพ์จำนวนแถวที่ต้องการ (สำหรับเพิ่มลงในฐานข้อมูลที่เกี่ยวข้อง) ลงในช่องที่เหมาะสมแล้วคลิกแทรกแถวปุ่ม.
- รอสักครู่จนกว่าเพจจะหยุดอัปเดตและกลับสู่แผงผู้ดูแลระบบ MongoDB
นำทางไปยังmongodb-เชื่อมต่อฐานข้อมูลภายในรายการด้านซ้ายและตรวจสอบรายการใหม่คอลเลกชันของฉันคอลเลกชันภายใน - ควรรวมจำนวนบันทึกที่ระบุไว้ข้างต้น5ในกรณีของเรา
อย่างที่คุณเห็นทุกอย่างทำงานได้ดีเนื่องจากแอปพลิเคชันสามารถเชื่อมต่อกับฐานข้อมูลของเราได้ตอนนี้คุณสามารถใช้แผงผู้ดูแลระบบเพื่อดำเนินการอื่นๆที่จำเป็นกับฐานข้อมูลของคุณได้ในลักษณะเดียวกัน
มีประโยชน์ที่จะรู้
เอกสารประกอบของแพลตฟอร์มยังมีคำแนะนำเสริมจำนวนหนึ่งสำหรับเซิร์ฟเวอร์ MongoDB ซึ่งอาจมีประโยชน์แม้กระทั่งกับผู้ใช้ที่คุ้นเคยและมีประสบการณ์:
- กำหนดค่าชุดแบบจำลองด้วยจำนวน Node MongoDB ที่ไม่สม่ำเสมอเพื่อใช้งานการจำลองแบบมาสเตอร์-สเลฟและ Failover อัตโนมัติพร้อมกัน
- มั่นใจในความปลอดภัยของข้อมูลด้วยการปรับการกำหนดการสำรองข้อมูล- ป้องกันข้อมูลสูญหายและช่วยให้สามารถกู้คืนได้ในกรณีที่เซิร์ฟเวอร์ขัดข้องโดยไม่คาดคิด
- เรียนรู้วิธีการสร้างการเข้าถึงระยะไกลไปยังฐานข้อมูลของคุณเพื่อรับความสามารถในการทำงานกับมันผ่านแอปพลิเคชันไคลเอนต์ที่เหมาะสมแม้ว่าจะไม่จำเป็นต้องลงชื่อเข้าใช้แดชบอร์ดของเราก็ตาม
- อ่านการนำเข้า/ส่งออกการถ่ายโอนข้อมูลคำแนะนำเพื่อค้นหาวิธีสำรองข้อมูลของคุณภายในไฟล์ดัมพ์ด้วยตนเองและกู้คืนจากดัมพ์ที่สร้างไว้ก่อนหน้านี้หากจำเป็น



