springboot+mongodb
生活随笔
收集整理的這篇文章主要介紹了
springboot+mongodb
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
pom.xml
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>application.properties:
spring.data.mongodb.uri=mongodb://localhost:27017/testUserRepository:類似Jpa查詢方式
public interface UserRepository extends MongoRepository<User, String> {List<User> findByName(String name); }UserController:
添加操作
@RequestMapping("add") public String add() {User user = new User();user.setName("sher");user.setAge(11);return userRepository.save(user).toString(); }更新操作
@RequestMapping("edit/{id}") public String edit(@PathVariable String id) {User user = userRepository.findOne(id);user.setName("sher_edit");return userRepository.save(user).toString(); }刪除操作
@RequestMapping(value = "del/{id}", method = RequestMethod.DELETE) public void del(@PathVariable String id) {userRepository.delete(id); }mongoTemplate操作:
mongoTemplate.save(user);//添加Query query = new Query(Criteria.where("name").is("sher"));List<User> userList = mongoTemplate.find(query, User.class);//查詢所有name是sheruserList.forEach(System.out::println);User one = mongoTemplate.findOne(query, User.class);//單個結果查詢操作System.out.println("查詢單個User:" + one.toString());Update update = new Update().set("age", 24);User modify = mongoTemplate.findAndModify(query, update, User.class);//數據庫更新了但是返回的是舊的對象System.out.println("返回更新前對象:" + modify);Update update2 = new Update().set("age", 26);FindAndModifyOptions upsert = new FindAndModifyOptions().returnNew(true).upsert(true);User andModify = mongoTemplate.findAndModify(query, update2, upsert, User.class);//返回更新后對象System.out.println("返回更新后對象" + andModify); // mongoTemplate.updateFirst(query, update, User.class);//進行第一條符合要求的數據更新 // mongoTemplate.updateMulti(query, update, User.class);//進行更新多行數據 // mongoTemplate.remove(user);//進行數據刪除注意:upsert(true),update和insert結合體默認為false,當它為true的時候,update方法會首先查找與第一個參數匹配的記錄,在用第二個參數更新之,如果找不到與第一個參數匹配的的記錄,就插入一條
后臺打印結果:
User{id='58e846a758717a2878845638', name='sher', age=33} User{id='58e855e958717a1a202a645f', name='sher', age=11} User{id='58e8583358717a2c58077fea', name='sher', age=11} User{id='58e858c858717a1b343b4132', name='sher', age=11} User{id='58e85a4e58717a2e50a577c1', name='sher', age=11} 查詢單個User:User{id='58e846a758717a2878845638', name='sher', age=33} 返回更新前對象:User{id='58e846a758717a2878845638', name='sher', age=33} 返回更新后對象User{id='58e846a758717a2878845638', name='sher', age=26}還有更多方法具體參照api
?
完整例子
轉載于:https://my.oschina.net/u/3125112/blog/875231
總結
以上是生活随笔為你收集整理的springboot+mongodb的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: script type=text/tem
- 下一篇: 阿里云ECS镜像