首页>代码>Spring MVC整合mongodb开发实现java web增删改查,适合Spring MVC和mongodb开发初学者>/MongoWeb/src/com/demo/mo/dao/impl/UserDaoImpl.java
package com.demo.mo.dao.impl;
import java.util.List;
import java.util.regex.Pattern;
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.demo.mo.dao.UserDao;
import com.demo.mo.entity.User;
@Repository
public class UserDaoImpl implements UserDao {
@Autowired
private MongoTemplate mongoTemplate;
public MongoTemplate getMongoTemplate() {
return mongoTemplate;
}
public void setMongoTemplate(MongoTemplate mongoTemplate) {
this.mongoTemplate = mongoTemplate;
}
@Override
public void insert(User user) {
getMongoTemplate().insert(user);
}
@Override
public User findOne(String id) {
return getMongoTemplate().findOne(new Query(Criteria.where("uid").is(id)),User.class);
}
@Override
public List<User> findAll() {
return getMongoTemplate().findAll(User.class);
}
@Override
public List<User> findByRegex(String regex) {
Pattern pattern = Pattern.compile(regex,Pattern.CASE_INSENSITIVE);
Criteria criteria = new Criteria("name").regex(pattern.toString());
return getMongoTemplate().find(new Query(criteria), User.class);
}
@Override
public void removeOne(User us) {
getMongoTemplate().remove(us);
}
@Override
public void removeAll() {
List<User> list = this.findAll();
if(list != null){
for(User user : list){
getMongoTemplate().remove(user);
}
}
}
@Override
public void findAndModify(User u) {
Query query = new Query();
Criteria criteria = new Criteria();
criteria.where("id").is(u.getUid());
query.addCriteria(criteria);
Update update = new Update();
update.set("name",u.getName());
update.set("age", u.getAge());
getMongoTemplate().updateFirst(query,update, User.class);
}
}
最近下载更多
微信网友_7134912998903808 LV15
2024年9月13日
wanglinddad LV55
2022年2月17日
凡人 LV2
2021年6月23日
阿风啦 LV14
2021年5月10日
xsxtxbb LV8
2021年3月9日
zt3631877 LV9
2021年1月9日
541888 LV2
2021年1月1日
renjialu7 LV4
2020年12月27日
莫小哥加油哈 LV3
2020年12月27日
木木沐 LV7
2020年11月21日
最近浏览更多
微信网友_7134912998903808 LV15
2024年9月13日
405117548 LV6
2024年6月20日
微信网友_7041475584184320
2024年6月17日
暂无贡献等级
charles41000 LV1
2023年10月31日
liangge2115 LV27
2023年4月16日
2534857231 LV2
2022年6月1日
291373020 LV7
2022年5月31日
wanglinddad LV55
2022年2月17日
nsz123456 LV11
2021年12月11日
Care269031877 LV4
2021年11月28日

