spring boot mongodb 整合以及簡單查詢(非實體結果返回)
阿新 • • 發佈:2019-01-05
一、安裝(nosql 視覺化工具客戶端下載路徑:https://nosqlbooster.com/downloads)
二、專案新增依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
三、yml配置
data: mongodb: port: 27017 //埠 host: 192.168.xx.xx //mongodb服務所在主機ip地址 database: test //資料庫名稱
注意:這裡還有種不同的配置,就是 mongodb 節點下面的uri 配置如:uri:mongodb://192.168.xx.xx:27017/test
這種配置暫時還是有問題的,啟動會報錯,所以一般不加uri配置項;
四、java 程式碼
import com.mongodb.BasicDBObject; import com.mongodb.DBCollection; import com.mongodb.DBObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.stereotype.Component; import org.springframework.stereotype.Repository; @Repository public class TestDao { @Autowired private MongoTemplate mongoTemplate; public void getRecordHistory(String userid) { DBCollection dbCollection = mongoTemplate.getCollection("user");//資料庫表名稱 BasicDBObject basicQuery = new BasicDBObject(); basicQuery.put("user_id",userid);//資料庫中的欄位,以及欄位值 DBObject one = dbCollection.findOne(basicQuery); System.out.println(one); } }
以上只寫了查詢,至於其他的增刪改,都在dbcollection這個物件裡面可以去嘗試一下;
看了很多部落格,上面都是在查詢的時候帶有實體類的(建立了實體類和資料庫對應),這裡我並沒有去建立實體類,查詢出來的是原生json格式資料。
這裡強調一點,nosql及mongodb,與關係型資料庫之所以不同是在於它欄位的可變性也就是靈活性,如果這裡新增實體類那麼和用關係型資料庫有什麼區別呢?當然這個只是我的個人看法而已;
手把手教你 MongoDB 的安裝與詳細使用(一)
http://www.ymq.io/2018/01/26/MongoDB-1/
手把手教你 MongoDB 的安裝與詳細使用(二)