在当今世界,尽快启动并运行应用程序非常重要。应用程序也应该易于开发和维护。
Spring是这样的框架,它提供了与许多不同框架的集成的简便性,这使得使用Spring开发应用程序变得很容易。一个这样的整合就是将Spring与MongoDB集成。
1.介绍
在本教程中,我们将讨论最着名的Java框架“Spring”和最着名的NoSQL数据库“MongoDB”的组合。 MongoDB是一个基于文档的NoSQL数据库,以JSON结构存储数据。
Spring提供了SpringData和MongoDB集成,以便轻松集成这两者,并为开发人员提供便利,而无需为插入,更新和删除而编写多个查询。
下面是SpringData MongoDB项目提供的一些功能:
SpringData允许使用@Configuration类和基于XML的配置。
Spring的数据访问异常层次结构用于异常转换。
Java的POJO和MongoDB文档之间的集成映射。
MongoTemplate类,可以很容易地使用常见的MongoDB操作。
除了用于低级映射的MongoTemplate,MongoReader和MongoWriter类。
理解任何技术的最好方法就是练习它,现在我们也会这样做。
现在我们来做一个简单的程序来详细了解Spring Data MongoDB。
2.技术和工具
让我们看看用于构建该程序的技术和工具。
Eclispe Oxygen.2版本(4.7.2)
Java - 版本9.0.4
Gradle - 4.6
MongoDB服务器 - 3.6
MongoCompass - 3.6
SpringDataMongoDB - 2.0.5-RELEASE
3.项目结构
我们的项目结构如下图所示。
Gradle项目结构将具有上面显示的项目结构。 如果是pom.xml,项目结构会略有不同。
4.计划
作为这个计划的一部分,我们将尝试完成下面提到的目标。
保存对象到MongoDB
在MongoDB中更新对象
从MongoDB中删除对象
从MongoDB获取所有对象
现在让我们了解该程序的所有组件。 首先,我们将从程序依赖和程序所需的罐子开始。
4.1 Gradle
我们使用Gradle作为程序的一部分。 Thebuild.gradlefile将如下所示。
在上面的build.gradlefileapply插件中:'java'tells我们需要设置的插件。 对我们来说这是Java插件。
repositories {}让我们知道应该从哪个版本库中提取依赖关系。 我们选择了mavenCentralto拉依赖罐。 我们可以使用它来拉动相应的依赖瓶。
依赖关系{}标记用于提供必须为项目拉取的必要jar文件细节。
4.2 MongoDB的配置
为了使用MongoDB配置,我们需要实现AbstractMongoConfiguration类。 MongoConfig.java类将如下所示。 我们在这里使用注释而不是xml。 但是,即使XML也可用于设置配置。
@ Configurationis用于将classMongoConfig.java定义为配置类。@ Beandefines theMongoClientbean。
4.3模型类
我们现在看看模型类。 我们使用student.java作为模型类,其中包含学生的姓名和年龄等属性。 Student.javamodel类用于将POJO映射到MongoDB集合。
@Document定义文档。 propertycollection定义将用于映射集合的集合。 所有作为集合一部分提及的属性都应该在POJO类中提供@ @定义集合的ID。
4.4 CRUD操作
要执行保存数据,更新数据,删除数据以及从MongoDB获取数据等CRUD操作,我们将使用MongoOperations。
现在我们来看看MongoDBPOperations.java类。 这个类包含所有CRUD操作方法的实现。
Java程序中最重要的类是包含主要方法的类。
4.5应用程序类
包含main方法的主类是application.javaclass。 我们将使用这个类从MongoDBPOperations类中调用方法。
让我们看看在Application.javaclass中执行的逐步操作:
我们正在创建应用程序上下文。 这是由于需要加载配置。
另外,MongoOperationsobject被创建为loadMongoTemplatebean。
MongoDBOperationsobject提供对执行不同的MongoOperation方法的方法的访问。
此外创建一个姓名约翰和年龄为15的学生对象。
我们正在调用保存方法MongoDBOperations,我们将传递必要的参数以将对象保存在数据库中。
同样,我们将一个MongoDBOperationsone的不同方法调用。
4.6运行程序
最后让我们现在运行该程序作为一个Java应用程序。 右键单击Application.java - > Run as - > Java Application。
以下结果将显示在控制台上。
现在让我们评论一下删除对象的命令。 MongoDB将成功存储数据。
此外,让我们对删除对象的行进行注释,如下所示。
由于该计划的变化,让我们重新运行该计划。 以下内容将出现在控制台上。
作为评论删除命令的结果,MongoDB将存储数据,因此将如下所示。