spring boot集成mongodb

在boot中操作mongodb也是非常的方便,如果是没有使用boot的项目,可以参考我之前的文章spring-data-mongodb之环境准备 看了之后你就会知道boot中使用mongodb在配置方面有多么简洁了。

今天只介绍怎么集成spring data mongodb,具体的用法请参考我博客之前的文章。

首先我们在pom.xml中加入mongodb的模块依赖

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-data-mongodb</artifactId>

</dependency>

然后在application.properties中配置mongodb的链接信息

# Database name.

spring.data.mongodb.database=test

# Mongo server host.

spring.data.mongodb.host=localhost

# Mongo server port.

spring.data.mongodb.port=27017

我这边只配置最基本的信息,用户也没有创建,更多配置信息请参考下面

# MONGODB (MongoProperties)

spring.data.mongodb.authentication-database= # Authentication database name.

spring.data.mongodb.database=test # Database name.

spring.data.mongodb.field-naming-strategy= # Fully qualified name of the FieldNamingStrategy to use.

spring.data.mongodb.grid-fs-database= # GridFS database name.

spring.data.mongodb.host=localhost # Mongo server host.

spring.data.mongodb.password= # Login password of the mongo server.

spring.data.mongodb.port=27017 # Mongo server port.

spring.data.mongodb.repositories.enabled=true # Enable Mongo repositories.

spring.data.mongodb.uri=mongodb://localhost/test # Mongo database URI. When set, host and port are ignored.

spring.data.mongodb.username= # Login user of the mongo server.

配置好了之后我们就可以直接操作mongodb了

MongoTemplate方式操作

直接用 @Autowired注解就可以注入MongoTemplate 对象了

@Component

public class StudentDao {

private final MongoTemplate mongoTemplate;

@Autowired

public StudentDao(MongoTemplate mongoTemplate) {

this.mongoTemplate = mongoTemplate;

}

public void addStudent(Student studnet) {

mongoTemplate.save(studnet);

}

public List<Student> queryStudents(){

return mongoTemplate.find(null, Student.class);

}

}

Repository方式操作

public interface StudentRepository extends MongoRepository<Student, String> {

public Student findByName(String name);

}

直接可以在controller里面调用StudentService 里面注入StudentDao就可以了

@RestController

public class StudentController {

@Autowired

private StudentService studentService;

@Autowired

private StudentRepository studentRepository;

@RequestMapping("/students")

Object queryStudents() {

return studentService.queryStudents();

}

@RequestMapping("/students/{name}")

Object queryStudentByName(@PathVariable String name) {

return studentRepository.findByName(name);

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值