mongodb安装以及springboot 整合 mongodb

mongodb安装-windows环境

到MongoDB官网下载对应版本的安装包

百度云地址:链接:https://pan.baidu.com/s/1VZ3ixzOPVzQD0GYgVT_H0w 密码:1ocs

安装步骤:

  • 在D盘建立MongoDB文件夹,在MongoDB文件下建立data\db文件夹作为数据文件的存储路径,建立logs文件夹存储日志文件。
  • 将MongoDB安装到D:\MongoDB路径下。

安装完成。

以管理员模式启动CMD,切换到MongoDB的安装目录,并执行命令:mongod --dbpath "D:\mongodb\data\db"  --logpath "D:\mongodb\logs\log.txt"  --install -serviceName "MongoDB"  

提示:win10用户无法以管理员启动cmd,可在C:\Windows\System32找到cmd.exe,右键选择以管理员身份运行。
如图:

启动mongodb服务:net start MongoDB

之后进入MongoDB数据库shell  命令:mongdo

退出命令:exit


springboot 整合mongodb

pom.xml依赖添加

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

配置文件application.properties:

spring.application.name=spirng-boot-mongodb
spring.data.mongodb.uri=mongodb://127.0.0.1:27017/test

实体类UserEntity:

public class UserEntity implements Serializable {
        private static final long serialVersionUID = -3258839839160856613L;
private Long id;
private String userName;
private String passWord;
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 "UserEntity{" +
"id=" + id +
", userName='" + userName + '\'' +
", passWord='" + passWord + '\'' +
'}';
}
}


Dao:

public interface UserDao {
public void saveUser(UserEntity user);
public UserEntity findUserByUserName(String userName);
public int updateUser(UserEntity user);
public void deleteUserById(Long id);
}
@Component
public class UserDaoImpl implements UserDao {
@Autowired
private MongoTemplate mongoTemplate;
/**
* 创建对象
* @param user
*/
@Override
public void saveUser(UserEntity user) {
mongoTemplate.save(user);
}
/**
* 根据用户名查询对象
* @param userName
* @return
*/
@Override
public UserEntity findUserByUserName(String userName) {
//Criteria 标准的查询接口,引用静态的Criteria.where()将多个条件组合在一起 多个查询条件使用and orOperator
Query query=new Query(Criteria.where("userName").is(userName));
UserEntity user = mongoTemplate.findOne(query , UserEntity.class);
return user;
}
/**
* 更新对象
* @param 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());
//更新查询返回结果集的第一条
UpdateResult result =mongoTemplate.updateFirst(query,update,UserEntity.class);
//更新查询返回结果集的所有
// mongoTemplate.updateMulti(query,update,UserEntity.class);
if(result!=null) {
System.out.println(result);
return 1;
}else{
return 0;
}
}
/**
* 删除对象
* @param id
*/
@Override
public void deleteUserById(Long id) {
Query query=new Query(Criteria.where("id").is(id));
mongoTemplate.remove(query,UserEntity.class);
}
}
测试:
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserDaoTest {
@Autowired
private UserDao userDao;
@Test
public void testSaveUser() throws Exception {
UserEntity user=new UserEntity();
user.setId(2l);
user.setUserName("小明");
user.setPassWord("fffooo123");
userDao.saveUser(user);
}
@Test
public void findUserByUserName(){
UserEntity user= userDao.findUserByUserName("小明");
System.out.println("user is "+user);
}
@Test
public void updateUser(){
UserEntity user=new UserEntity();
user.setId(2l);
user.setUserName("天空");
user.setPassWord("fffxxxx");
userDao.updateUser(user);
}
@Test
public void deleteUserById(){
userDao.deleteUserById(2L);
}
}
验证结果:

可以使用工具mongoVUE工具来连接后直接图形化展示查看,也可以登录服务器用命令来查看

出处:http://www.ityouknow.com/    

https://www.cnblogs.com/hiwen/p/8601867.html




 
 





猜你喜欢

转载自blog.csdn.net/m0_37576698/article/details/80094017