MongoDB最簡單的入門教程之五-通過Restful API訪問MongoDB
通過前面四篇的學習,我們已經在本地安裝了一個MongoDB資料庫,並且通過一個簡單的Spring boot應用的單元測試,插入了幾條記錄到MongoDB中,並通過MongoDB Compass檢視到了插入的資料。
MongoDB最簡單的入門教程之二 使用nodejs訪問MongoDB
MongoDB最簡單的入門教程之三 使用Java程式碼往MongoDB裡插入資料
MongoDB最簡單的入門教程之四:使用Spring Boot操作MongoDB
本文我們更進一步,通過Spring Boot構造出Restful API,這樣可以直接在瀏覽器裡通過呼叫Restful API對Spring Boot進行增刪查改了。
先看效果,假設我本地MongoDB的資料庫裡有一張表book,只有一條記錄,id為1。
通過瀏覽器裡的這個url根據id讀取該記錄: http://localhost:8089/bookmanage/read?id=1
記錄的建立:
http://localhost:8089/bookmanage/create?id=2&name=Spring&author=Jerry
記錄的搜尋: http://localhost:8089/bookmanage/search?name=*
記錄的刪除:刪除id為2的記錄
http://localhost:8089/bookmanage/delete?id=2
下面是實現的細節。
1. 建立一個新的controller,位於資料夾src/main/java下。
這個controller加上註解@RestController。@RestController註解相當於@ResponseBody和@Controller這兩個註解提供的功能的並集。這裡有一個知識點就是,如果用註解@RestController定義一個Controller,那麼這個Controller裡的方法無法返回jsp頁面,或者html,因為@ResponseBody註解在起作用,因此即使配置了檢視解析器 InternalResourceViewResolver也不會生效,此時返回的內容就是@RestController定義的控制器方法裡返回的內容。
2. 以讀操作為例,通過註解@GetMapping定義了讀操作Restful API的url為bookmanage/read。
@RequestParam定義了url:bookmanage/read後面的引數為id或者name。讀操作最終將會使用我們在 MongoDB最簡單的入門教程之三 使用Java程式碼往MongoDB裡插入資料 裡介紹的方法,即通過@Autowired注入的BookRepository例項完成對MongoDB的操作。
3. 建立操作的原始碼:
@GetMapping("/bookmanage/create")public Book create( @RequestParam(value="id", defaultValue="") String id, @RequestParam(value="name", defaultValue="noname") String name, @RequestParam(value="author", defaultValue="noauthor") String author ){ Book book = repository.save(new Book(id,name,author)); return book; }
4. 刪除操作的原始碼:
@GetMapping("/bookmanage/delete")public boolean delete( @RequestParam(value="id", defaultValue="") String id ){ //if no record if(repository.findById(id)==null) return false; // do database delete repository.deleteById(id); return true; }
本教程的完整程式碼在我的github上:
要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2214550/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MongoDB最簡單的入門教程之二 使用nodejs訪問MongoDBMongoDBNodeJS
- MongoDB 入門教程系列之三:使用 Restful API 操作 MongoDBMongoDBRESTAPI
- MongoDB最簡單的入門教程之三 使用Java程式碼往MongoDB裡插入資料MongoDBJava
- NoSLQ之MongoDB簡單入門MongoDB
- 使用Golang和MongoDB構建 RESTful APIGolangMongoDBRESTAPI
- Mongodb訪問控制MongoDB
- MongoDB 訪問超時MongoDB
- MongoDB 簡單上手MongoDB
- mongodb快速入門MongoDB
- Redis 、MongoDB入門RedisMongoDB
- MongoDB索引的簡單理解MongoDB索引
- 【MongoDB學習筆記】MongoDB 快速入門MongoDB筆記
- mongodb基礎入門MongoDB
- MongoDB 新手入門 - AggregationMongoDB
- MongoDB 新手入門 - CRUDMongoDB
- Koa2+MongoDB+JWT實戰--Restful API最佳實踐MongoDBJWTRESTAPI
- 簡單說說Restful APIRESTAPI
- 使用Kotlin + Jersey + Jetty + MongoDB建立可擴充套件的RESTful API - AndrewKotlinJettyMongoDB套件RESTAPI
- C#簡單操作MongoDBC#MongoDB
- MongoDB資料庫入門MongoDB資料庫
- mongodb和hbase的簡單比較MongoDB
- docker 中容器通過 API 互相訪問DockerAPI
- MongoDB 入門教程系列之二:使用 Spring Boot 操作 MongoDBMongoDBSpring Boot
- MongoDB基本APIMongoDBAPI
- [實戰] 使用 MongoDB Go 驅動與 Iris 構建 RESTful APIMongoDBRESTAPI
- Python連線訪問mongodb副本集PythonMongoDB
- mongoDB 3.0 安全許可權訪問MongoDB
- 快速掌握mongoDB(五)——通過mongofiles和C#驅動操作GridFSMongoDBC#
- .Net Core中簡單使用MongoDBMongoDB
- 實現一個簡單的 RESTful APIRESTAPI
- MongoDB從入門到刪庫MongoDB
- 最簡單易懂的ChatGPT入門指南!ChatGPT
- C# RESTful API 訪問輔助類C#RESTAPI
- SpringBoot 框架MongoDB 簡單的查詢方式Spring Boot框架MongoDB
- Golang 對MongoDB的操作簡單封裝GolangMongoDB封裝
- MongoDB4 事務 簡單易懂的?MongoDB
- Nginx入門教程(五)---訪問日誌簡單分析,統計PV、UV等資料。Nginx
- 簡單的mongodb的學習使用,勿噴,有問題點出MongoDB