MongoDB in practice

#MongoDB in Priactice


1. install

安装路径 G:\Tools\MongoDB

2. onfig

新建mongodb.config放到G:\Tools\MongoDB\bin
内容

1
2
3
4
5
## 数据库文件目录
dbpath=G:/Tools/MongoDB/data
## 日志目录
logpath=G:/Tools/MongoDB/log/mongo.log
diaglog=3

3. start mongodb

mongod --config g:\Tools\MongoDB\bin\mongodb.config
将MongoDB服务器作为Windows服务运行
mongod --config g:\Tools\MongoDB\bin\mongodb.config --install

4. connect mongodb

mongo
we can use robomongo to operator mongodb with GUI

5. Spring Support

1. use springdata JAP
1
2
3
4
5
6
public interface PersonDao extends MongoRepository<Person, ObjectId> {
@Query(value = "{'age' : {'$gte' : ?0, '$lte' : ?1}, 'name':?2 }",fields="{ 'name' : 1, 'age' : 1}")
List<Person> findByAge(int age1, int age2, String name);
}
2. use mongoTemplate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
@Repository("personMongoImpl")
public class PersonMongoImpl implements PersonMongoDao {
@Resource
private MongoTemplate mongoTemplate;
@Override
public List<Person> findAll() {
return mongoTemplate.findAll(Person.class,"person");
}
@Override
public void insertPerson(Person person) {
mongoTemplate.insert(person,"person");
}
@Override
public void removePerson(String userName) {
mongoTemplate.remove(Query.query(Criteria.where("name").is(userName)),"person");
}
@Override
public void updatePerson() {
mongoTemplate.updateMulti(Query.query(Criteria.where("age").gt(3).lte(5)), Update.update("age",3),"person");
}
@Override
public List<Person> findForRequery(String userName) {
return mongoTemplate.find(Query.query(Criteria.where("name").is(userName)),Person.class);
}
}
© 2017 Hello World All Rights Reserved. 本站访客数人次 本站总访问量
Theme by hiero