本文展示了如何通过注释配置将MongoDB集成到您的spring项目中。

我们将从Gradle配置开始。

group 'com.gkatzioura.spring'
version '1.0-SNAPSHOT'buildscript {repositories {mavenCentral()}dependencies {classpath("org.springframework.boot:spring-boot-gradle-plugin:1.2.7.RELEASE")}
}apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'spring-boot'jar {baseName = 'mdb-spring-boot'version =  '0.1.0'
}repositories {mavenCentral()
}sourceCompatibility = 1.8
targetCompatibility = 1.8dependencies {compile("org.springframework.boot:spring-boot-starter-web")compile('com.googlecode.json-simple:json-simple:1.1.1')compile("org.springframework.boot:spring-boot-starter-actuator")compile("org.springframework.data:spring-data-mongodb:1.8.0.RELEASE")compile("ch.qos.logback:logback-classic:1.1.3")compile("ch.qos.logback:logback-core:1.1.3")compile("org.json:json:20150729")compile("com.google.code.gson:gson:2.4")compile("org.slf4j:slf4j-api:1.7.12")testCompile("junit:junit")testCompile('org.springframework.boot:spring-boot-starter-test')
}task wrapper(type: Wrapper) {gradleVersion = '2.3'
}

我们将使用spring注释继续进行MongoDB配置。

package com.gkatzioura.spring.config;import com.mongodb.MongoClient;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.MongoDbFactory;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.SimpleMongoDbFactory;import java.net.UnknownHostException;/*** Created by oSeven3 on 21/10/2015.*/
@Configuration
public class MongoDbConfiguration {public @Bean MongoDbFactory getMongoDbFactory() throws UnknownHostException {return new SimpleMongoDbFactory(new MongoClient("localhost",27017),"mongotest");}public @Bean(name = "mongoTemplate") MongoTemplate getMongoTemplate() throws UnknownHostException {MongoTemplate mongoTemplate = new MongoTemplate(getMongoDbFactory());return mongoTemplate;}}

接下来,我们将定义模型。 我们将创建位置模型,其中将包含纬度经度。

package com.gkatzioura.spring.persistence.entities;import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;import java.math.BigDecimal;
import java.util.Date;
import java.util.UUID;@Document(collection = "location")
public class Location {@Idprivate String id;private BigDecimal latitude;private BigDecimal longitude;private Date timestamp;public String getId() {return id;}public void setId(String id) {this.id = id;}public BigDecimal getLatitude() {return latitude;}public void setLatitude(BigDecimal latitude) {this.latitude = latitude;}public BigDecimal getLongitude() {return longitude;}public void setLongitude(BigDecimal longitude) {this.longitude = longitude;}public Date getTimestamp() {return timestamp;}public void setTimestamp(Date timestamp) {this.timestamp = timestamp;}
}

然后我们将创建我们的存储库

package com.gkatzioura.spring.persistence.repositories;import com.gkatzioura.spring.persistence.entities.Location;
import org.springframework.data.repository.CrudRepository;import java.util.UUID;public interface LocationRepository extends CrudRepository<Location,String> {
}

然后我们将定义我们的控制器

package com.gkatzioura.spring.controller;import com.gkatzioura.spring.persistence.entities.Location;
import com.gkatzioura.spring.persistence.repositories.LocationRepository;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.ArrayList;
import java.util.List;import java.io.IOException;/*** Created by oSeven3 on 21/10/2015.*/@RestController
@RequestMapping("/location")
public class LocationController {@Autowiredprivate LocationRepository locationRepository;private static final Logger LOGGER = LoggerFactory.getLogger(LocationRepository.class);@RequestMapping(value = "/",method = RequestMethod.POST)@ResponseBodypublic String post(@RequestBody Location location) {locationRepository.save(location);return "OK";}@RequestMapping(value = "/",method = RequestMethod.GET)@ResponseBodypublic List<Location> get() {List<Location> locations = new ArrayList<>();locationRepository.findAll().forEach(l->locations.add(l));return locations;}}

最后但并非最不重要的是我们的Application类

package com.gkatzioura.spring;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;/*** Created by gkatziourasemmanouil on 8/15/15.*/
@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}}

为了跑就跑

gradle bootRun

翻译自: https://www.javacodegeeks.com/2015/11/integrate-mongodb-to-your-spring-project.html

将MongoDB集成到您的Spring项目相关推荐

  1. 将MongoDB集成到您的Spring项目中

    本文展示了如何通过注释配置将MongoDB集成到您的spring项目中. 我们将从Gradle配置开始. group 'com.gkatzioura.spring' version '1.0-SNAP ...

  2. redis集成spring_将Redis集成到您的Spring项目中

    redis集成spring 本文介绍如何通过注释配置将Redis缓存集成到您的spring项目中. 我们将从Gradle配置开始. 我们将使用jedis驱动程序. group 'com.gkatzio ...

  3. 将Redis集成到您的Spring项目中

    本文展示了如何通过注释配置将Redis缓存集成到您的spring项目中. 我们将从Gradle配置开始. 我们将使用jedis驱动程序. group 'com.gkatzioura.spring' v ...

  4. 在Spring项目中集成使用MongoDB

    在Spring项目中集成使用MongoDB 这里使用的是maven工程,所以依赖jar包都是pom.xml配置型式. pom.xml引入依赖 <properties><spring. ...

  5. spring 项目中集成 Protocol Buffers 示例

    http://blog.csdn.net/fangzhangsc2006/article/details/8687388 本文适用于了解spring框架,同时想在spring项目中使用Protocol ...

  6. spring 项目集成配置_Spring重试–与项目集成的方式

    spring 项目集成配置 如果您需要在代码中实现健壮的重试逻辑,一种行之有效的方法是使用spring重试库. 我的目的不是要展示如何使用spring retry项目本身,而是要演示将其集成到代码库中 ...

  7. mongodb java 日志分析_记一次log4j与mongodb集成引发的问题分析

    问题背景 对项目中的关键应用调用链日志需要结构化得统一吐出到mongodb中,同时项目中日志输出使用log4j,故准备使用log4j的Appender直接集成mongodb的输出,同时mongodb采 ...

  8. idea创建包怎么让包分层_idea创建Spring项目的方法步骤(图文)

    Spring介绍 Spring概述 Spring是一个开源框架,Spring是2003年兴起的轻量级java开发框架,由Rod Johnson 在其著作 Expert One-On-One J2EE ...

  9. SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载

    转载自   SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载 基本准备工作 1.安装JDK1.6以上版本,安装与配置 2.下载mybatis-3.2.0版:htt ...

最新文章

  1. Android 软键盘按键监控
  2. SemEval-2020自由文本关系抽取冠军方案解读 (附NLP竞赛常用技巧总结)
  3. sklearn自学指南(part40)--使用手册的目录
  4. HTML基础(part1)--预备知识
  5. mysql exists依赖查询_MySQL EXISTS 和 NOT EXISTS 子查询
  6. c/c++语言程序设计题库,CD2_计算机实践《C/C++语言程序设计》_题目列表.doc
  7. day1: python3.5学习
  8. Harmony OS — Picker滑动选择器
  9. 项目部署:IIS部署后运行报错iconfont.woff:1 Failed to load resource: the server responded with a status of 404
  10. Linux终端下载百度云,Linux终端使用wget下载百度云资源
  11. 【1】星空派GD32F303开发板介绍
  12. 常微分方程简要复习_笔记_第2章:一阶微分方程的初等解法
  13. java计算机毕业设计BS模式快递运输平台2021源码+mysql数据库+系统+lw文档+部署
  14. 主引导记录MBR/硬盘分区表DPT/主分区、扩展分区和逻辑分区/电脑启动过程
  15. tv球赛节目预告链结
  16. 软件工程个人阅读作业——阅读和调研
  17. 共享电商即共享商圈的背后: 共创、共生、共享、共富,共赢的共富精神
  18. 修复无限网卡驱动报错:windows仍在设置此设备的类配置(代码56)
  19. 怎样绕过工信部备案系统
  20. 数据结构实验PTA 7-10 旅游规划 分数 25

热门文章

  1. 漫画:什么是八皇后问题
  2. Spring的IoC与DI差异
  3. Hibernate中使用Criteria查询及注解——(hibernate.cfg.xml)
  4. 2018蓝桥杯省赛---java---C---9(小朋友崇拜圈)
  5. 图的深度优先遍历+图解
  6. unity 3d shaderlab 开发实战详解_vue实战开发011:使用router-view嵌套路由详解
  7. java线程同步——条件对象+synchronized 关键字
  8. linux使jdk开机可用_JDK 11的一般可用性
  9. junit5和junit4_JUnit 5 –架构
  10. Spring Bootstrap中具有配置元数据的高级配置