![ebf4cd0b2c73851a1c39b7a9c7baba02.jpeg](https://i-blog.csdnimg.cn/blog_migrate/7dc5eecb539d68ba5cfb731ae76bdc5c.jpeg)
@Autowired
private MongoTemplate mongoTemplate;
/**
* 查找全部
* @return
*/
@Override
public List<User> findAll() {
return mongoTemplate.findAll(User.class);
}
/**
* 根据id得到对象
* @param id
* @return
*/
@Override
public User getUser(Integer id) {
User user = mongoTemplate.findOne(new Query(Criteria.where("id").is(id)), User.class);
return user;
}
/**
* 根据id更新
* @param user
*/
@Override
public void update(User user) {
Criteria criteria = Criteria.where("id").is(user.getId());
Query query = new Query(criteria);
Update update = Update.update("name", user.getName()).set("age", user.getAge());
mongoTemplate.updateMulti(query,update,User.class);
}
@Override
public void insert(User user) {
mongoTemplate.insert(user);
}
/**
* 插入一个集合
*/
@Override
public void insertAll(List<User> users) {
mongoTemplate.insertAll(users);
}
/**
* 根据id删除一个用户
* @param id
*/
@Override
public void remove(Integer id) {
Criteria criteria = Criteria.where("id").is(id);
Query query=new Query(criteria);
mongoTemplate.remove(query,User.class);
}
/**
* 分页查找
* @param user 过滤条件
* @param pageable 分页bean
* @return
*/
@Override
public List<User> findByPage(User user, Pageable pageable) {
Query query=new Query();
if (user!=null&&user.getName()!=null){
//模糊查询
query=new Query(Criteria.where("name").regex("^"+user.getName()));
}
List<User> list=mongoTemplate.find(query.with(pageable),User.class);
return list;
}
![8321e966d79888b366359138a06f1988.png](https://i-blog.csdnimg.cn/blog_migrate/107d817e695f59802e890c81849c2320.png)
![73cf240f77314ae782972d9df4811077.png](https://i-blog.csdnimg.cn/blog_migrate/8254f853656032b69d579db41caed174.png)