springboot集成mongodb

第一步:创建maven项目并在pom.xml中添加依赖

<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>1.5.13.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
 
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
	</properties>
 
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
 
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-mongodb</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mongodb</groupId>
			<artifactId>mongo-java-driver</artifactId>
			<version>3.2.2</version>
		</dependency>
	</dependencies>
 
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

第二步:创建application.properties文件,并在里面引入mongodb配置

第三步:注入MongoTemplate

我这里编写测试类

package springbootTest;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
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.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = SPAppLication.class )//这里是启动类
public class MongoDBTest {

	@Autowired
	private MongoTemplate mongoTemplate;
	
	@Test
	public void add(){
		String dbName = mongoTemplate.getDb().getName(); 
		System.out.println(dbName);
	}
	@Test
    public void edit(){
        Query query = new Query(Criteria.where("age").is(24));
        Update update = new Update();
        update.set("name", "sunwukong");
        update.set("age",500);
        mongoTemplate.updateFirst(query, update, "User");
    }
    @Test
    public void del(){
        Query query = new Query(Criteria.where("name").is("sunwukong"));
        mongoTemplate.remove(query , "User");
    }
    @Test
    public void getById(){
        Query query = new Query(Criteria.where("name").is("sunwukong"));
        User user = mongoTemplate.findOne(query,User.class,"User");
        System.out.println(user);
    }

}

因为我的pom.xml文件中还引入

<dependency>
			<groupId>org.mongodb</groupId>
			<artifactId>mongo-java-driver</artifactId>
			<version>3.2.2</version>
		</dependency>

所以也可以直接编写// 连接到 mongodb 服务进行测试

public class MongoDBJDBC {

	public static void main(String[] args) {
		try{   
		       // 连接到 mongodb 服务
		         MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
		       
		         // 连接到数据库
		         MongoDatabase mongoDatabase = mongoClient.getDatabase("test");  
		         System.out.println("Connect to database successfully");
		         //mongoDatabase.createCollection("jovi");
		         //System.out.println("集合创建成功");
		         MongoCollection<Document> collection = mongoDatabase.getCollection("jovi");
		         System.out.println("集合获取成功");
		         
		         //插入文档  
		         /** 
		         * 1. 创建文档 org.bson.Document 参数为key-value的格式 
		         * 2. 创建文档集合List<Document> 
		         * 3. 将文档集合插入数据库集合中 mongoCollection.insertMany(List<Document>) 插入单个文档可以用 mongoCollection.insertOne(Document) 
		         * */
		         Document document = new Document("title", "joviTest").append("date", "2019-04-24").append("happy", "今天心情不错").
		        		 append("weather", "rain");
		         List<Document> documents = new ArrayList<Document>();  
		         documents.add(document);
		         collection.insertMany(documents);  
		         System.out.println("文档插入成功");  
		         FindIterable<Document> find = collection.find();
		         for (Document document2 : find) {
		        	 System.out.println(document2); 
				}
		      }catch(Exception e){
		        System.err.println( e.getClass().getName() + ": " + e.getMessage() );
		     }
		
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值