1 pom.xml配置

增加包依赖:spring-boot-starter-data-mongodb

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

2 application.properties配置文件中增加:

spring.data.mongodb.uri=mongodb://127.0.0.1:27017/ceshidb

ceshidb是数据库名字

2.4版本以上的mongodb采用如下格式配置:

spring.data.mongodb.uri=mongodb://root(userName):root(password)@localhost(ip地址):27017(端口号)/gis数据库)

 3 创建实体类

package com.cfj.ceshi.entity;

public class UserEntity {

    private static final long serialVersionUID = 1L;
private Long id;
private String userName;
private String passWord; public UserEntity() {
super();
} public UserEntity(String userName, String passWord) {
super();
this.passWord = passWord;
this.userName = userName;
} 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 "userName " + this.userName + ", pasword " + this.passWord;
} }

4 创建dao接口和实现类

package com.cfj.ceshi.dao;

import com.cfj.ceshi.entity.UserEntity;

public interface UserDao {

    public void saveUser(UserEntity user);

    public UserEntity findUserByUserName(String userName);

    public int updateUser(UserEntity user);

    public void deleteUserById(Long id);

}
package com.cfj.ceshi.dao.impl;

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.Repository; import com.cfj.ceshi.dao.UserDao;
import com.cfj.ceshi.entity.UserEntity;
import com.mongodb.WriteResult; @Repository
public class UserDaoImpl implements UserDao{ @Autowired
private MongoTemplate mongoTemplate; @Override
public void saveUser(UserEntity user) {
//mongoTemplate.save(user);
mongoTemplate.save(user, "jihe01");//指定集合 } @Override
public UserEntity findUserByUserName(String userName) {
Query query = new Query(Criteria.where("userName").is(userName));
//UserEntity user = mongoTemplate.findOne(query, UserEntity.class);
UserEntity user = mongoTemplate.findOne(query, UserEntity.class, "jihe01");//指定集合
return user;
} @Override
public int updateUser(UserEntity user) {
Query query=new Query(Criteria.where("id").is(user.getId()));
Update update= new Update().set("userName", user.getUserName()).set("passWord", user.getPassWord());
//更新查询返回结果集的第一条
WriteResult result =mongoTemplate.updateFirst(query,update,UserEntity.class, "jihe01");
//更新查询返回结果集的所有
// mongoTemplate.updateMulti(query,update,UserEntity.class);
if(result!=null)
return result.getN();
else
return 0;
} @Override
public void deleteUserById(Long id) {
Query query=new Query(Criteria.where("id").is(id));
mongoTemplate.remove(query,UserEntity.class, "jihe01"); } }

 5 创建service接口和实现类

package com.cfj.ceshi.service;

import com.cfj.ceshi.entity.UserEntity;

public interface UserService {

    public void saveUser(UserEntity user);

    public UserEntity findUserByUserName(String userName);

    public int updateUser(UserEntity user);

    public void deleteUserById(Long id);

}
package com.cfj.ceshi.service.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import com.cfj.ceshi.dao.UserDao;
import com.cfj.ceshi.entity.UserEntity;
import com.cfj.ceshi.service.UserService; @Service
public class UserServiceImpl implements UserService{ @Autowired
private UserDao userDao; @Override
public void saveUser(UserEntity user) {
userDao.saveUser(user);
} @Override
public UserEntity findUserByUserName(String userName) {
return userDao.findUserByUserName(userName);
} @Override
public int updateUser(UserEntity user) {
return userDao.updateUser(user);
} @Override
public void deleteUserById(Long id) {
userDao.deleteUserById(id);
} }

6 创建web(control)层

package com.cfj.ceshi.web;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import com.cfj.ceshi.entity.UserEntity;
import com.cfj.ceshi.service.UserService; @RestController
public class UserController { @Autowired
private UserService userService; //按名字查询
@RequestMapping("/getUserByName")
public String getUserByName(String name) {
UserEntity user= userService.findUserByUserName(name);
return user.toString();
} //增加方法
@RequestMapping("/add")
public void save() {
UserEntity user=new UserEntity();
user.setId(3l);
user.setUserName("小明");
user.setPassWord("fffooo123");
userService.saveUser(user);
}
//更新方法
@RequestMapping("/update")
public void update(UserEntity user) {
userService.updateUser(user);
}
//删除方法
@RequestMapping(value="/delete")
public void delete(Long id) {
userService.deleteUserById(id);
} }

 7 可以使用postman等工具进行测试

代码地址:https://gitee.com/kaixinmao/springboot-mongodb

最新文章

  1. .Net中的AOP读书笔记系列之AOP介绍
  2. 10个开源的PHP网站内容管理系统
  3. Netty解决TCP粘包/拆包问题 - 按行分隔字符串解码器
  4. Ubuntu 12.04 卸载 VMware
  5. 怎么用js代码改变单选框的选中状态
  6. c++类模板中静态成员变量的声明定义
  7. Linux之mailx的使用
  8. 【LInux】查看Linux系统版本信息
  9. CentOS 7 上安装vim(默认未安装)
  10. JavaScript 函数定义和调用
  11. Orchard模块开发全接触6:自定义用户注册
  12. Matlab的集合运算[转]
  13. Mac 系统上安装Lua和SubmlimeText 编译器
  14. bat生成vbs通过注册表禁用或启用USB端口
  15. C/C++ 开放库
  16. mycat引起的insert后马上select不到数据的故障分析
  17. 64位win2003/win2008系统IIS6.0/7.5配置PHP的方法
  18. BZOJ4521 Cqoi2016 手机号码 【数位DP】
  19. flask(列表数据接口设计)
  20. Turtlebot

热门文章

  1. HDU 5876 补图最短路
  2. PAT乙级1043
  3. FreeIPA ACI (Access Control Instructions) 访问控制说明
  4. Jquery 前端解码base64出现中文乱码的问题解决方案
  5. C# 设置程序开机自启动
  6. 北京清北 综合强化班 Day3
  7. Http协议三次握手和四次挥手
  8. ie8中如何使用base64
  9. CF1208 Red Blue Tree
  10. 在浏览器上打开、预览Excel xlsx表格文件