我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mongodb的java客户端

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mongodb的java客户端


	mongodb的java客户端
[数据库教程]

6. mongoDB的java客户端

1. springboot操作mongodb


1. maven配置


      
org.springframework.boot    
spring-boot-starter-data-mongodb

2. application.properties中添加配置

spring.data.mongodb.uri=mongodb://name:[email protected]:27017/test

多个IP集群的可以采用下面的配置:

spring.data.mongodb.uri=mongodb://user:[email protected]:port1,ip2:port2/database

3. 创建数据库操作的实体类

import java.io.Serializable;
public class User implements Serializable {
      private static final long serialVersionUID = -3258839839160856613L;
      private Long id;
      private String userName;
      private String passWord;

      public Long getId() {
              return id;
      }

      public void setId(Long id) {
              this.id = id;
      }

      public String getUserName() {
              return userName;
      }

      public void setUserName(String userName) {
              this.userName = userName;
      }

      public String getPassWord() {
              return passWord;
      }

      public void setPassWord(String passWord) {
              this.passWord = passWord;
      }

      @Override
      public String toString() {
              return "UserEntity{" +
                      "id=" + id +
                      ", userName=‘" + userName + ‘‘‘ +
                      ", passWord=‘" + passWord + ‘‘‘ +
                      ‘}‘;
      }
}

4. 实体类相关的增删改查操作

import com.mongodb.client.result.UpdateResult;
import com.neo.repository.UserRepository;
import com.neo.model.User;
import org.springframework.beans.factory.annotation.Autowired;
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.Component;

@Component
public class UserRepositoryImpl implements UserRepository {

  @Autowired
  private MongoTemplate mongoTemplate;

  
  @Override
  public void saveUser(User user) {
      mongoTemplate.save(user);
  }

  
  @Override
  public User findUserByUserName(String userName) {
      Query query=new Query(Criteria.where("userName").is(userName));
      User user = mongoTemplate.findOne(query , User.class);
      return user;
  }

  
  @Override
  public long updateUser(User user) {
      Query query=new Query(Criteria.where("id").is(user.getId()));
      Update update= new Update().set("userName", user.getUserName()).set("passWord", user.getPassWord());
      //更新查询返回结果集的第一条
      UpdateResult result =mongoTemplate.updateFirst(query,update,User.class);
      //更新查询返回结果集的所有
      // mongoTemplate.updateMulti(query,update,UserEntity.class);
      if(result!=null)
          return result.getMatchedCount();
      else
          return 0;
  }

  
  @Override
  public void deleteUserById(Long id) {
      Query query=new Query(Criteria.where("id").is(id));
      mongoTemplate.remove(query,User.class);
  }
}

2. 多数据源MongoDB的使用

1. Maven配置

      
org.springframework.boot    
spring-boot-starter-data-mongodb

2. 配置两条数据源

mongodb:
primary:
  host: localhost
  port: 27017
  database: test
secondary:
  host: localhost
  port: 27017
  database: data

3. 创建文件实体类

import lombok.Data;
import org.springframework.boot.autoconfigure.mongo.MongoProperties;

@Data //生成get、set方法等
public class MultipleMongoProperties {

  private MongoProperties primary = new MongoProperties();
  private MongoProperties secondary = new MongoProperties();

}

4. 配置两个数据库

数据库1

@Configuration
@EnableMongoRepositories(basePackages = "com.tedu.huawei.repository.primary",
      mongoTemplateRef = PrimaryMongoConfig.MONGO_TEMPLATE) //basePackages对应第一个库的repository所在的地址
public class PrimaryMongoConfig {
  protected static final String MONGO_TEMPLATE = "primaryMongoTemplate";
}

数据库2

@Configuration
@EnableMongoRepositories(basePackages = "com.tedu.huawei.repository.secondary",
      mongoTemplateRef = SecondaryMongoConfig.MONGO_TEMPLATE)
public class SecondaryMongoConfig {
  protected static final String MONGO_TEMPLATE = "secondaryMongoTemplate";
}

5. 构造对应的MongoTemplate

import com.mongodb.MongoClient;
import com.tedu.huawei.entity.MultipleMongoProperties;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.mongo.MongoProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.data.mongodb.MongoDbFactory;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;

@Configuration
public class MultipleMongoConfig {

  @Autowired
  private MultipleMongoProperties mongoProperties;

  @Bean
  @ConfigurationProperties(prefix = "mongodb")
  public MultipleMongoProperties connectionSettings(){
      return new MultipleMongoProperties();

  }

  @Primary
  @Bean(name = PrimaryMongoConfig.MONGO_TEMPLATE)
  public MongoTemplate primaryMongoTemplate() throws Exception {
      return new MongoTemplate(primaryFactory(this.mongoProperties.getPrimary()));
  }

  @Bean
  @Qualifier(SecondaryMongoConfig.MONGO_TEMPLATE)
  public MongoTemplate secondaryMongoTemplate() throws Exception {
      return new MongoTemplate(secondaryFactory(this.mongoProperties.getSecondary()));
  }

  @Bean
  @Primary
  public MongoDbFactory primaryFactory(MongoProperties mongo) throws Exception {
      return new SimpleMongoDbFactory(new MongoClient(mongo.getHost(), mongo.getPort()),
              mongo.getDatabase());
  }

  @Bean
  public MongoDbFactory secondaryFactory(MongoProperties mongo) throws Exception {
      return new SimpleMongoDbFactory(new MongoClient(mongo.getHost(), mongo.getPort()),
              mongo.getDatabase());
  }
}

mongodb的java客户端

原文地址:https://blog.51cto.com/14901322/2520835

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mongodb的java客户端

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mongodb的java客户端

6. mongoDB的java客户端1. springboot操作mongodb1. maven配置 org.springframework.boot spring-boot-starter-data-mongodb2. application
mongodb的java客户端
2020-12-29

mongodb客户端怎么启动

要启动 mongodb 客户端,请按以下步骤操作:安装 mongodb启动 mongodb 服务连接到 mongodb 客户端验证连接如何启动 MongoDB 客户端步骤 1:安装 MongoDB访问 MongoDB 网站:https:/
mongodb客户端怎么启动
2024-05-30

MongoDB客户端工具NoSQL Manager for MongoDB怎么使用

这篇文章主要讲解了“MongoDB客户端工具NoSQL Manager for MongoDB怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MongoDB客户端工具NoSQL Man
2023-07-02

mongodb客户端驱动并发安全吗?

最近发现不少小伙伴都对Golang很感兴趣,所以今天继续给大家介绍Golang相关的知识,本文《mongodb客户端驱动并发安全吗?》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激
mongodb客户端驱动并发安全吗?
2024-04-05

VNC的客户端,VNC的客户端哪个好用

IIS7服务器管理工具能够作为VNC的客户端,进行VNC的命令操作,可在客户端,下载,安装VNC软件!同时,它也可以作为FTP的客户端,进行FTP的命令操作!它能够批量连接Windows和Linux系统下的服务器和VPS,并能够实时监测他们
2023-06-04

⑩【Redis Java客户端】:Jedis、SpringDataRedis、StringRedisTemplate

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ Jedis、SpringDataRedis、St
⑩【Redis Java客户端】:Jedis、SpringDataRedis、StringRedisTemplate
2023-12-23

python——客户端

客户端综述twisted是一个设计非常灵活的框架,通过它可以写出功能强大的客户端,然而要在代码中使用非常多的层次结构。这个文档包括创建用于TCP,SSL和Unix sockets的客户端在底层,实际上完成协议语法和处理的是Protocol类
2023-01-31

Python的SIP客户端

公司要搭一套电话会议系统,经济危机啦,为了节省开支,这种实验性的东西都交给我了,也是因为没有什么项目,不能让人闲着啊,哈哈。开源的IP PBX就知道asterisk和opensir,因为星号的盛名,选择了asterisk,但配置就不那么轻松
2023-01-31

Java中http下载文件客户端和上传文件客户端的示例分析

这篇文章主要介绍了Java中http下载文件客户端和上传文件客户端的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、下载客户端代码package javadownl
2023-05-30

elasticsearch java客户端action怎么实现

这篇文章主要介绍“elasticsearch java客户端action怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“elasticsearch java客户端action怎么实现”文章能帮
2023-06-30

Java简单的SOAP客户端怎么编写

编写Java简单的SOAP客户端可以通过以下步骤进行:1. 导入必要的类和包。首先,需要导入`javax.xml.soap`包和相关的类。例如:```javaimport javax.xml.soap.*;```2. 创建SOAP连接。使用
2023-09-27

MapR 5.2.2 客户端

Golang不知道大家是否熟悉?今天我将给大家介绍《MapR 5.2.2 客户端》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!问题内容我有一
MapR 5.2.2 客户端
2024-04-04

Kafka Java客户端代码的示例分析

这篇文章将为大家详细讲解有关Kafka Java客户端代码的示例分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。kafka是一种高吞吐量的分布式发布订阅消息系统kafka是linkedin
2023-06-17

Java客户端开发的方法是什么

这篇文章主要讲解了“Java客户端开发的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java客户端开发的方法是什么”吧!这一步是对之前进行较大的改动。增加的类也比较多。包结构如下
2023-06-17

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录