Hari baik untuk semua!
Aliran baru 
"Pengembang di Kerangka Kerja Musim Semi" dimulai, "tiba-tiba", kursus ini ternyata sangat populer di kalangan siswa baru dan mereka yang telah belajar dari kami di Jawa dan perusahaan "reguler". Jadi jika itu menarik, datanglah ke kami untuk 
pelajaran terbuka , dan, tentu saja, bagikan materi yang menarik tentang topik tersebut.
Pegas Terjemahan Terjemahan Tutorial MongoDB 
Diposting oleh Anand KumarAyo pergi!
Di dunia sekarang ini, sangat penting untuk membuat dan menjalankan aplikasi sesegera mungkin. Selain itu, aplikasi harus mudah dikembangkan dan mudah dirawat.
Spring hanyalah kerangka kerja yang memberikan kemudahan integrasi dengan banyak kerangka kerja lain yang berbeda, yang menyederhanakan pengembangan aplikasi menggunakan Spring. Salah satu integrasi tersebut adalah integrasi Spring dengan MongoDB.
 1. Pendahuluan
1. Pendahuluan Dalam pelajaran ini, kita akan membahas kombinasi kerangka Java Spring paling terkenal dan sistem manajemen basis data (DBMS) MongoDB yang paling terkenal. MongoDB adalah DBMS NoSQL berorientasi dokumen yang menyimpan data dalam format seperti JSON.
Spring Data dan integrasi MongoDB disediakan oleh Spring untuk memfasilitasi interaksi baik kenyamanan dan pengembang, menghilangkan kebutuhan untuk menulis banyak pertanyaan untuk memasukkan, memperbarui, dan menghapus.
Berikut ini adalah beberapa fitur yang disediakan oleh proyek Spring Data MongoDB:
- Spring Data memungkinkan Anda untuk menggunakan kelas @Configuration dan konfigurasi XML.
- Hierarki pengecualian Akses Data digunakan untuk menerjemahkan pengecualian.
- Pemetaan terintegrasi antara POJOs Java dan dokumen MongoDB.
- Kelas MongoTemplate, yang menyederhanakan penggunaan operasi MongoDB umum.
- Selain MongoTemplate, Anda bisa menggunakan kelas MongoReader dan MongoWriter untuk rendering tingkat rendah.
Cara terbaik untuk memahami teknologi apa pun adalah dengan menggunakannya dalam praktik, dan itulah yang akan kita lakukan sekarang.
Mari kita buat program sederhana untuk mempelajari lebih lanjut tentang Spring Data MongoDB.
2. Teknologi dan alatMari kita lihat teknologi dan alat yang akan kita gunakan untuk membuat program.
- Eclispe Oxygen.2 Rilis (4.7.2)
- Java - versi 9.0.4
- Gradle - 4.6
- Server MongoDB - 3.6
- MongoCompass - 3.6
- SpringDataMongoDB - 2.0.5-RELEASE
3. Struktur proyekStruktur proyek kami akan terlihat seperti yang ditunjukkan di bawah ini.
 Struktur Proyek untuk Data Musim Semi MongoDB
Struktur Proyek untuk Data Musim Semi MongoDBProyek gradle akan memiliki struktur yang ditunjukkan di atas. Dalam kasus pom.xml, struktur proyek akan sedikit berbeda.
4. ProgramSebagai bagian dari program ini, kami akan mencoba menyelesaikan tugas di bawah ini.
- Menyimpan Objek di MongoDB
- Memperbarui objek di MongoDB
- Menghapus objek dari MongoDB
- Mengambil Semua Objek dari MongoDB
Sekarang mari kita menganalisis semua komponen program. Pertama-tama, kita akan mulai dengan dependensi dan file jar yang diperlukan untuk program ini.
4.1 gradleKami menggunakan Gradle untuk membangun sebagai bagian dari program. File 
build.gradle akan terlihat seperti yang ditunjukkan di bawah ini.
 apply plugin: 'java' repositories { mavenCentral() } dependencies { compile group: 'org.springframework.data', name: 'spring-data-mongodb', version: '2.0.5.RELEASE' implementation 'com.google.guava:guava:23.0' testImplementation 'junit:junit:4.12' } 
Di file 
build.gradle , baris 
apply plugin: 'java' memberi tahu plug-in mana yang harus dipasang. Dalam kasus kami, ini adalah plugin Java.
Tag 
repositories{} melaporkan repositori dari mana dependensi harus ditarik. Kami memilih 
mavenCentral untuk menarik file jar yang tergantung. Kita juga bisa menggunakan jcenter untuk menarik file jar yang terkait.
Tag 
dependencies {} digunakan untuk menyediakan data yang diperlukan tentang file jar yang perlu ditarik untuk proyek.
4.2 Konfigurasi untuk MongoDBUntuk menggunakan konfigurasi MongoDB, kita perlu mengimplementasikan kelas 
AbstractMongoConfiguration . Kelas 
MongoConfig.java akan terlihat seperti yang ditunjukkan di bawah ini. Di sini kami menggunakan anotasi, bukan xml. Tetapi XML juga dapat digunakan untuk mengkonfigurasi konfigurasi.
Implementasi kelas MongoConfig.java
 package com.tutorial.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.mongodb.config.AbstractMongoConfiguration; import com.mongodb.MongoClient; @Configuration public class MongoConfig extends AbstractMongoConfiguration { @Override public String getDatabaseName() { return "local"; } @Override @Bean public MongoClient mongoClient() { return new MongoClient("127.0.0.1"); } } 
@Configuration digunakan untuk mendefinisikan kelas 
MongoConfig.java sebagai kelas konfigurasi. 
@Bean mendefinisikan 
MongoClient .
4.3 Kelas modelSekarang perhatikan kelas model. Kami menggunakan 
student.java sebagai kelas model yang berisi atribut untuk Siswa, seperti Nama dan Usia. Kelas model 
Student.java digunakan untuk memetakan POJO ke koleksi MongoDB.
Kelas Model Siswa
 package com.tutorial.model; import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; @Document(collection = "students") public class Student { public Student(String studentName, int studentAge) { this.studentName = studentName; this.studentAge = studentAge; } @Id private String id; String studentName; int studentAge; public String getStudentName() { return studentName; } public void setStudentName(String studentName) { this.studentName = studentName; } public int getStudentAge() { return studentAge; } public void setStudentAge(int studentAge) { this.studentAge = studentAge; } @Override public String toString() { return String.format( "Student[id=%s, studentName='%s', studentAge="+studentAge+"]", id, studentName); } } 
@Document mendefinisikan dokumen. Properti 
collection menentukan koleksi yang akan digunakan untuk mencocokkan koleksi. Semua atribut yang disebut sebagai bagian dari koleksi harus dapat diakses di kelas POJO. 
@Id mendefinisikan pengidentifikasi koleksi.
4.4 Operasi CRUDUntuk melakukan operasi CRUD (kependekan untuk membuat, membaca, memperbarui, menghapus), seperti menyimpan, memperbarui, menghapus, dan mengambil data dari MongoDB, kami akan menggunakan 
MongoOperations .
Sekarang mari kita lihat kelas 
MongoDBPOperations.java . Kelas ini berisi implementasi semua metode operasi CRUD.
Kelas MongoDBPOperations yang akan digunakan untuk melakukan operasi CRUD
 package com.tutorial; import java.util.List; import org.springframework.data.mongodb.core.MongoOperations; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Update; import com.tutorial.model.Student; public class MongoDBPOperations { public void saveStudent(MongoOperations mongoOperation, Student student) { mongoOperation.save(student); System.out.println("Student saved successfully");  
Kelas yang paling penting dari program Java adalah kelas yang berisi metode 
main .
4.5 Kelas AplikasiKelas utama yang berisi metode utama adalah kelas 
Application.java . Kami akan menggunakan kelas ini untuk memanggil metode dari kelas 
MongoDBPOperations .
Kelas aplikasi untuk memanggil metode kelas MongoDBPOperations
 package com.tutorial; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.data.mongodb.core.MongoOperations; import com.tutorial.config.MongoConfig; import com.tutorial.model.Student; public class Application { public static void main (String[] args) {  
Mari kita lihat langkah demi langkah pada operasi yang dilakukan di kelas 
Application.java :
- Kami membuat ApplicationContext. Ini karena perlunya mengunduh konfigurasi.
- Selain itu, objek MongoOperationsuntuk memuat komponenMongoTemplate.
- Objek MongoDBOperationsmenyediakan akses ke metode untuk melakukan berbagai operasiMongoOperation.
- Selain itu, objek Siswa dibuat dengan nama John dan usia 15.
- Kami memanggil metode saveMethoddari kelassaveMethod, dan meneruskan parameter yang diperlukan untuk menyimpan objek dalam database.
- Dengan cara yang sama, kami memanggil berbagai metode MongoDBOperationssatu per satu.
4.6 Memulai programAkhirnya, sekarang mari kita jalankan program sebagai aplikasi Java. Klik kanan pada Application.java -> Run as -> Java Application.
Hasil berikut akan muncul di konsol.
 Keluaran konsol setelah memulai program
Keluaran konsol setelah memulai programSekarang mari kita komentari perintah untuk menghapus objek. MongoDB akan berhasil menyimpan data.
Juga, mari kita komentari baris untuk menghapus objek, seperti yang ditunjukkan di bawah ini.
Aplikasi kelas setelah mengomentari metode penghapusan
 package com.tutorial; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.data.mongodb.core.MongoOperations; import com.tutorial.config.MongoConfig; import com.tutorial.model.Student; public class Application { public static void main (String[] args) {  
Setelah membuat perubahan pada program, mari kita mulai kembali. Berikut ini muncul di konsol.
 Konsol saat operasi penghapusan dikomentari
Konsol saat operasi penghapusan dikomentariSebagai hasil dari mengomentari perintah delete, MongoDB akan menyimpan data dan karenanya akan terlihat seperti yang ditunjukkan di bawah ini.
 Output MongoDB setelah perintah simpan dan perbarui5. Unduh proyek Eclipse
Output MongoDB setelah perintah simpan dan perbarui5. Unduh proyek EclipseAnda dapat mengunduh seluruh kode sumber untuk contoh ini di 
sini.AKHIR
Seperti biasa, kami menunggu pertanyaan dan komentar di sini atau pergi ke 
Yuri untuk 
pelajaran terbuka di mana Anda tidak hanya dapat mendengarkan, tetapi juga bertanya-tanya.