Rumah >Java >javaTutorial >Bagaimana untuk mengkonfigurasi pangkalan data MongoDB dalam SpringBoot2
NoSQL ( Bukan Sahaja SQL ), yang bermaksud "bukan hanya SQL". Istilah umum untuk sistem pengurusan pangkalan data yang berbeza daripada pangkalan data hubungan tradisional. NoSQL digunakan untuk penyimpanan data berskala sangat besar. Jenis stor data ini tidak memerlukan skema tetap dan boleh diskalakan tanpa operasi berlebihan.
--优点: 高可扩展性 分布式计算 低成本 架构的灵活性,半结构化数据 没有复杂的关系 --缺点: 没有标准化 有限的查询功能(到目前为止) 数据展现不直观
2. Ciri MongoDB
3) MongoDB bertujuan untuk menyediakan penyelesaian storan data berprestasi tinggi yang boleh skala untuk aplikasi WEB.
4) MongoDB menyimpan data sebagai dokumen dan struktur data terdiri daripada pasangan nilai kunci (key=>value). Dokumen MongoDB adalah serupa dengan objek JSON. Nilai medan boleh mengandungi dokumen lain, tatasusunan dan tatasusunan dokumen.
3. Integrasi dengan SpringBoot2
# 打开命令行 MongoDB4.0\bin>mongo # 展示所有数据库 > show databases # 新建一个admin数据库,命令比较难为情 > db.admin.insert({"name":"管理员数据库"}); # 使用admin数据库 > use admin # 创建root用户,具有读写权限 > db.createUser({user:"root",pwd:"root",roles:[{role:"readWrite",db:"admin"}]}) Successfully added user:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
4. Antara muka aplikasi terkapsul
spring: data: mongodb: uri: mongodb://root:root@localhost:27017/admin
public interface ImgInfoRepository { void saveImg(ImgInfo imgInfo) ; ImgInfo findByImgTitle(String imgTitle); long updateImgInfo(ImgInfo imgInfo) ; void deleteById(Integer imgId); }
import com.boot.mongodb.entity.ImgInfo; import com.boot.mongodb.repository.ImgInfoRepository; import com.mongodb.client.result.UpdateResult; import org.springframework.data.mongodb.core.MongoTemplate; 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 org.springframework.stereotype.Service; import javax.annotation.Resource; @Service public class ImgInfoRepositoryImpl implements ImgInfoRepository { @Resource private MongoTemplate mongoTemplate; @Override public void saveImg(ImgInfo imgInfo) { mongoTemplate.save(imgInfo) ; } @Override public ImgInfo findByImgTitle(String imgTitle) { Query query=new Query(Criteria.where("imgTitle").is(imgTitle)); return mongoTemplate.findOne(query,ImgInfo.class); } @Override public long updateImgInfo(ImgInfo imgInfo) { Query query = new Query(Criteria.where("imgId").is(imgInfo.getImgId())); Update update= new Update().set("imgTitle", imgInfo.getImgTitle()).set("imgUrl", imgInfo.getImgUrl()); UpdateResult result = mongoTemplate.updateFirst(query,update,ImgInfo.class); return result.getMatchedCount(); } @Override public void deleteById(Integer imgId) { Query query = new Query(Criteria.where("imgId").is(imgId)); mongoTemplate.remove(query,ImgInfo.class); } }
Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi pangkalan data MongoDB dalam SpringBoot2. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!