亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > Spring Boot中使用MongoDB數據庫的方法

Spring Boot中使用MongoDB數據庫的方法

熱門標簽:怎么投訴地圖標注 老虎洗衣店地圖標注 云南外呼系統 電銷機器人是什么軟件 濟南電銷機器人加盟公司 蘋果汽車租賃店地圖標注 呼和浩特電銷外呼系統加盟 杭州人工電銷機器人價格 廣州長安公司怎樣申請400電話

MongoDB數據庫簡介

簡介

  MongoDB是一個高性能,開源,無模式的,基于分布式文件存儲的文檔型數據庫,由C++語言編寫,其名稱來源取自“humongous”,是一種開源的文檔數據庫──NoSql數據庫的一種。NoSql,全稱是 Not Only Sql,指的是非關系型的數據庫。

特點

  MongoDB數據庫的特點是高性能、易部署、易使用,存儲數據非常方便。主要功能特性有:

  * 面向集合存儲,易存儲對象類型的數據。
  * 模式自由。
  * 支持動態查詢。
  * 支持完全索引,包含內部對象。
  * 支持查詢。
  * 支持復制和故障恢復。
  * 使用高效的二進制數據存儲,包括大型對象(如視頻等)。
  * 自動處理碎片,以支持云計算層次的擴展性
  * 支持RUBY,PYTHON,JAVA,C++,PHP等多種語言。
  * 文件存儲格式為BSON(一種JSON的擴展)
  * 可通過網絡訪問

MongoDB是一個開源的NoSQL文檔數據庫,它使用一個JSON格式的模式(schema)替換了傳統的基于表的關系數據。Spring Boot為使用MongoDB提供了很多便利,包括spring-boot-starter-data-mongodb 'Starter POM'。

引入spring-boot-starter-data-mongodb包,在pom.xml配置文件中增加如下內容(基于之前章節“Spring Boot 構建框架”中的pom.xml文件):

dependency> 
  groupId>org.springframework.boot/groupId>
  artifactId>spring-boot-starter-data-mongodb/artifactId>
/dependency>

注入一個自動配置的org.springframework.data.mongodb.MongoDbFactory來訪問Mongo數據庫。默認情況下,該實例將嘗試使用URL: mongodb://localhost/test連接一個MongoDB服務器。

import org.springframework.data.mongodb.MongoDbFactory;
import com.mongodb.DB;
@Component
public class MyBean {
  private final MongoDbFactory mongo;
  @Autowired
  public MyBean(MongoDbFactory mongo) {
    this.mongo = mongo;
  }
  // ...
  public void example() {
  DB db = mongo.getDb();
    // ...
  }
}

可以通過設置spring.data.mongodb.uri來改變該url,或指定一個host/port。在application.properties中設置如下的屬性:

spring.data.mongodb.host=mongoserver
spring.data.mongodb.port=27017

注意:如果沒有指定spring.data.mongodb.port,那將使用默認的端口27017。可以簡單的從上面的示例中刪除這一行。如果不使用Spring Data Mongo,可以注入com.mongodb.Mongo beans而不是使用MongoDbFactory。如果想全面控制MongoDB連接的建立,也可以聲明自己的MongoDbFactory或Mongo,@Beans。

MongoDBTemplate

Spring Data Mongo提供了一個MongoTemplate類,它的設計和Spring的JdbcTemplate很相似。正如JdbcTemplate一樣,Spring Boot會自動配置一個bean,你只需簡單的注入它即可:

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.stereotype.Component;
@Component
public class MyBean {
  private final MongoTemplate mongoTemplate;
  
  @Autowired
  public MyBean(MongoTemplate mongoTemplate) {
    this.mongoTemplate = mongoTemplate;
  }
  // ...
}

應用集成MongoDB案例

在application.properties配置文件中添加內容如下:

spring.data.mongodb.uri=mongodb://name:pass@localhost:27017/test

多個IP集群采用以下配置:

spring.data.mongodb.uri=mongodb://user:pass@ip1:port1,ip2:port2/database

創建數據實體類,具體代碼如下:

public class UserInfo implements Serializable {
  private Long id;
  private String userName;
  private String passWord;
  //getter、setter省略
}

創建實體類對應dao層,實現增刪改查操作,具體代碼如下:

@Component
public class UserInfoDaoImpl implements UserInfoDao {// UserInfoDao 自定義接口
  @Autowired
  private MongoTemplate mongoTemplate;
  /**
   * 創建對象
   * @param user
   */
  @Override
  public void saveUser(UserInfo user) {
    mongoTemplate.save(user);
  }
  /**
   * 根據用戶名查詢對象
   * @param userName
   * @return
   */
  @Override
  public UserInfo findUserByUserName(String userName) {
    Query query=new Query(Criteria.where("userName").is(userName));
    UserInfo user = mongoTemplate.findOne(query , UserInfo.class);
    return user;
  }
  /**
   * 更新對象
   * @param user
   */
  @Override
  public void updateUser(UserInfo user) {
    Query query=new Query(Criteria.where("id").is(user.getId()));
    Update update= new Update().set("userName", user.getUserName()).set("passWord", user.getPassWord());
    //更新查詢返回結果集的第一條
    mongoTemplate.updateFirst(query,update,UserInfo.class);
    //更新查詢返回結果集的所有
    // mongoTemplate.updateMulti(query,update,UserInfo.class);
  }
  /**
   * 刪除對象
   * @param id
   */
  @Override
  public void deleteUserById(Long id) {
    Query query=new Query(Criteria.where("id").is(id));
    mongoTemplate.remove(query,UserInfo.class);
  }
}

簡單測試方法,具體代碼如下:

@RunWith(SpringRunner.class)
@SpringBootTest
public class UserDaoTest {
  @Autowired
  private UserDao userDao;
  @Test
  public void testSaveUser() throws Exception {
    UserInfo user=new UserInfo();
    user.setId(2);
    user.setUserName("路人甲");
    user.setPassWord("123456");
    userDao.saveUser(user);
  }
  @Test
  public void findUserByUserName(){
    UserInfo user= userDao.findUserByUserName("路人甲");
    System.out.println("user is "+user);
  }
  @Test
  public void updateUser(){
    UserInfo user=new UserInfo();
    user.setId(3);
    user.setUserName("路人乙");
    user.setPassWord("123456");
    userDao.updateUser(user);
  }
  @Test
  public void deleteUserById(){
    userDao.deleteUserById(3);
  }
}

登錄MongoDB驗證數據

使用mongoVUE工具來連接后直接圖形化查看或登錄服務器用命令來查看登錄mongodb服務端,執行命令bin/mongo -host localhost -port 27017,切換至test庫執行use test命令,查詢userInfo集合數據,執行db.userInfo.find()查詢數據。

總結

以上所述是小編給大家介紹的Spring Boot中使用MongoDB數據庫的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • 詳解SpringBoot中RestTemplate的幾種實現
  • Spring + Spring Boot + MyBatis + MongoDB的整合教程
  • SpringBoot中logback日志保存到mongoDB的方法
  • 利用Spring Boot操作MongoDB的方法教程
  • Spring Boot之搞定mongoTemplate的知識小結

標簽:雞西 玉林 遼陽 自貢 廈門 興安盟 無錫 泰安

巨人網絡通訊聲明:本文標題《Spring Boot中使用MongoDB數據庫的方法》,本文關鍵詞  Spring,Boot,中,使用,MongoDB,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Spring Boot中使用MongoDB數據庫的方法》相關的同類信息!
  • 本頁收集關于Spring Boot中使用MongoDB數據庫的方法的相關信息資訊供網民參考!
  • 推薦文章
    免费国产一级特黄aa大片在线| 成人免费网站视频ww| 国产网站在线| 日韩专区一区| 久久国产精品永久免费网站| 国产一区二区精品尤物| 可以免费看污视频的网站| 日本免费乱人伦在线观看| 欧美一级视频高清片| 黄视频网站免费| 免费的黄色小视频| 九九免费精品视频| 欧美一级视| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 久草免费资源| 日本在线播放一区| 黄视频网站免费看| 一级女人毛片人一女人| 午夜激情视频在线播放| 青青青草视频在线观看| 二级片在线观看| 四虎久久影院| 久久久久久久男人的天堂| 成人免费观看视频| 成人a大片在线观看| 久久精品免视看国产成人2021| 国产成人啪精品| 久久久成人网| 免费的黄视频| 久久国产精品永久免费网站| 九九久久国产精品| 久久精品店| 精品在线免费播放| 久久国产精品自由自在| 青青久久精品| 亚洲精品久久久中文字| 亚洲第一页乱| 日韩字幕在线| 美女免费精品视频在线观看| 成人a级高清视频在线观看| 国产国语对白一级毛片| 成人免费观看的视频黄页| 成人a大片在线观看| 国产亚洲免费观看| 韩国毛片基地| 一级毛片视频播放| 日韩av成人| 日本免费乱人伦在线观看| 日韩在线观看网站| 亚洲天堂免费| 久久成人综合网| 国产亚洲精品aaa大片| 亚洲 男人 天堂| 青草国产在线观看| 精品久久久久久中文字幕2017| 精品毛片视频| 一级女性全黄久久生活片| 天堂网中文在线| 黄视频网站免费| 久久久成人影院| 成人免费观看视频| 成人免费福利片在线观看| 午夜激情视频在线观看| 香蕉视频久久| 日本在线不卡视频| 欧美日本免费| 日韩中文字幕在线观看视频| 九九久久国产精品大片| 亚洲不卡一区二区三区在线| 欧美一级视| 你懂的日韩| 日韩欧美一二三区| 色综合久久天天综合| 久久99中文字幕| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 欧美激情一区二区三区视频| 色综合久久天天综合| 国产网站免费观看| 国产91精品一区| 天天做人人爱夜夜爽2020毛片| 国产不卡在线观看| 精品国产一区二区三区免费 | 精品国产三级a| 国产成人精品一区二区视频| 国产一区二区精品| 99久久精品国产高清一区二区| 国产原创中文字幕| 日本在线播放一区| 国产美女在线观看| 欧美a级v片不卡在线观看| 久久99欧美| 国产视频一区在线| 黄色免费三级| 日韩综合| 成人在免费观看视频国产| 国产综合91天堂亚洲国产| 日韩综合| 国产视频一区在线| 国产一区二区福利久久| 麻豆网站在线看| 精品视频在线观看一区二区| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 亚洲第一页色| 国产视频一区在线| 成人免费观看网欧美片| 国产91丝袜在线播放0| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产韩国精品一区二区三区| 国产精品123| 成人a级高清视频在线观看| 天天做人人爱夜夜爽2020| 国产网站免费视频| 国产91丝袜高跟系列| 色综合久久天天综线观看| 日韩字幕在线| 久久国产一久久高清| 中文字幕一区二区三区 精品| 午夜激情视频在线播放| 一级片免费在线观看视频| 精品国产亚一区二区三区| 久草免费在线观看| 国产成人精品综合久久久| 久久久久久久男人的天堂| 欧美大片aaaa一级毛片| 青青青草影院| 日本特黄特黄aaaaa大片 | 一级毛片视频免费| 午夜精品国产自在现线拍| 成人免费观看网欧美片| 欧美日本国产| 欧美大片一区| 日韩在线观看免费| 国产视频在线免费观看| 欧美一区二区三区在线观看| 黄色福利| 成人高清视频免费观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产高清在线精品一区二区| 欧美1区| 国产不卡在线观看视频| 精品国产一区二区三区免费 | 国产亚洲免费观看| 欧美另类videosbestsex高清| 久久久久久久男人的天堂| 91麻豆精品国产片在线观看| 欧美1区2区3区| 国产视频在线免费观看| 欧美爱爱网| 成人免费网站视频ww| 国产高清在线精品一区二区| 国产91丝袜在线播放0| 欧美1区2区3区| 国产伦理精品| 美国一区二区三区| 亚洲第一页色| 999精品视频在线| 欧美大片a一级毛片视频| 精品国产亚洲一区二区三区| 久久精品欧美一区二区| 九九久久99| 国产成人啪精品| 欧美激情影院| 韩国毛片| 中文字幕97| 一 级 黄 中国色 片| 精品视频免费观看| 黄视频网站免费观看| 欧美18性精品| 精品久久久久久影院免费| 国产伦久视频免费观看 视频| 成人在免费观看视频国产| 黄视频网站在线免费观看| 天天做日日爱夜夜爽| 青青久久精品| 亚洲天堂在线播放| 成人免费观看男女羞羞视频| 青青久久网| 麻豆系列 在线视频| 久久国产精品只做精品| 高清一级淫片a级中文字幕| 日本特黄一级| 精品久久久久久免费影院| 日韩在线观看免费| 久久国产一久久高清| 一级女人毛片人一女人| 天天做人人爱夜夜爽2020| 国产美女在线观看| 国产不卡在线观看视频| 国产一区精品| 日韩一级黄色片| 欧美1区2区3区| 日日爽天天| 999精品影视在线观看| 日韩字幕在线| 日韩在线观看免费| 久久久久久久久综合影视网| 色综合久久天天综合绕观看| 久久国产影视免费精品| 国产不卡在线看| 久草免费在线观看|