久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

SpringBoot整合MongoDB的實(shí)現(xiàn)代碼

瀏覽:3日期:2023-03-09 13:07:20
目錄一、添加Maven依賴二、application.yml配置三、代碼中使用Mongo1.Mongo適用場(chǎng)景2.以我最近博客開(kāi)發(fā)的一個(gè)聯(lián)系我為例(這里我使用Mongo)

MongoDB官網(wǎng)安裝:https://www.mongodb.com/download-center/community

MongoDB客戶端工具(Mongo Management Studio)安裝:http://mms.litixsoft.de/#software_pricing

一、添加Maven依賴

<!--mongodb--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>二、application.yml配置

spring: data: mongodb: host: 127.0.0.1 port: 27017 database: blog三、代碼中使用Mongo1.Mongo適用場(chǎng)景

(1)可用于動(dòng)態(tài)列;(2)可用于配置方面(如一些系統(tǒng)配置);(3)日志記錄;(4)用于博客開(kāi)發(fā)中的評(píng)論或留言;(5)物聯(lián)網(wǎng)方面的門(mén)鎖相關(guān)信息存儲(chǔ);(6)探頭;

上面六個(gè)場(chǎng)景是我之前開(kāi)發(fā)使用過(guò)的。

當(dāng)然了,Mongo還可以應(yīng)用更多地方,關(guān)鍵在于應(yīng)用的場(chǎng)景是否合適。

2.以我最近博客開(kāi)發(fā)的一個(gè)聯(lián)系我為例(這里我使用Mongo)

(1)建立數(shù)據(jù)模型(需要在Mongo對(duì)應(yīng)的庫(kù),建立對(duì)應(yīng)的集合)

package com.springcloud.blog.admin.mongo.entity;import com.springcloud.blog.admin.common.base.BaseDTO;import org.springframework.data.mongodb.core.mapping.Document;import org.springframework.data.mongodb.core.mapping.Field;/** * 聯(lián)系我-數(shù)據(jù)模型 */@Document(collection = 'contact_me')public class ContactMe extends BaseDTO { @Field private String name; @Field private String email; @Field private String content; public String getName() {return name; } public void setName(String name) {this.name = name; } public String getEmail() {return email; } public void setEmail(String email) {this.email = email; } public String getContent() {return content; } public void setContent(String content) {this.content = content; }}

(2)數(shù)據(jù)訪問(wèn)層

package com.springcloud.blog.admin.mongo.dao;import com.springcloud.blog.admin.mongo.entity.ContactMe;import org.springframework.data.mongodb.repository.MongoRepository;/** * 聯(lián)系我-持久層 */public interface ContactMeRepository extends MongoRepository<ContactMe, String> {}

(3)對(duì)外API

package com.springcloud.blog.admin.mongo.controller;import com.alibaba.fastjson.JSONObject;import com.springcloud.blog.admin.common.dict.ResponseDict;import com.springcloud.blog.admin.mongo.dao.ContactMeRepository;import com.springcloud.blog.admin.mongo.entity.ContactMe;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestBody;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import java.util.List;/** * 聯(lián)系我(Mongo Example) */@RestController@RequestMapping('/contactMe')public class ContactMeController { @Autowired private ContactMeRepository contactMeRepository; @PostMapping('/save') public JSONObject save(@RequestBody ContactMe contactMe) {JSONObject jsonObject = new JSONObject();contactMeRepository.save(contactMe);jsonObject.put(ResponseDict.RESPONSE_CODE_KEY, ResponseDict.RESPONSE_SUCCESS_CODE);jsonObject.put(ResponseDict.RESPONSE_MSG_KEY, ResponseDict.RESPONSE_SUCCESS_MSG);return jsonObject; } @PostMapping('/delete') public JSONObject delete(@RequestBody ContactMe contactMe) {JSONObject jsonObject = new JSONObject();contactMeRepository.delete(contactMe);jsonObject.put(ResponseDict.RESPONSE_CODE_KEY, ResponseDict.RESPONSE_SUCCESS_CODE);jsonObject.put(ResponseDict.RESPONSE_MSG_KEY, ResponseDict.RESPONSE_SUCCESS_MSG);return jsonObject; } @PostMapping('/update') public JSONObject update(@RequestBody ContactMe contactMe) {JSONObject jsonObject = new JSONObject();contactMeRepository.save(contactMe);jsonObject.put(ResponseDict.RESPONSE_CODE_KEY, ResponseDict.RESPONSE_SUCCESS_CODE);jsonObject.put(ResponseDict.RESPONSE_MSG_KEY, ResponseDict.RESPONSE_SUCCESS_MSG);return jsonObject; } @PostMapping('/getAll') public JSONObject getAll() {JSONObject jsonObject = new JSONObject();List<ContactMe> list = contactMeRepository.findAll();jsonObject.put(ResponseDict.RESPONSE_CODE_KEY, ResponseDict.RESPONSE_SUCCESS_CODE);jsonObject.put(ResponseDict.RESPONSE_MSG_KEY, ResponseDict.RESPONSE_SUCCESS_MSG);jsonObject.put(ResponseDict.RESPONSE_DATA_KEY, list);return jsonObject; }}

簡(jiǎn)單的說(shuō)就是一個(gè)非常簡(jiǎn)單的增刪改查,可幫助入門(mén)。同時(shí)一般情況下,還是需要業(yè)務(wù)邏輯層的,一方面為了復(fù)用考慮,另外一方面不同的業(yè)務(wù)辦不同的事情。

以上就是SpringBoot整合MongoDB的實(shí)現(xiàn)代碼的詳細(xì)內(nèi)容,更多關(guān)于SpringBoot整合MongoDB的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Spring
相關(guān)文章:
主站蜘蛛池模板: 康保县| 伊川县| 岳阳市| 商水县| 田东县| 从江县| 尼玛县| 兴海县| 宁海县| 河曲县| 疏附县| 武穴市| 阿巴嘎旗| 文山县| 行唐县| 泸溪县| 永靖县| 汾阳市| 淮滨县| 河池市| 册亨县| 北京市| 孙吴县| 宁津县| 蓬莱市| 松溪县| 上栗县| 敖汉旗| 昌都县| 丹棱县| 栖霞市| 乐亭县| 惠水县| 武平县| 稷山县| 平顶山市| 青冈县| 仁化县| 新平| 资兴市| 香港|