diff --git a/buildpackage/src/test/java/com/hzya/frame/temButtom.java b/buildpackage/src/test/java/com/hzya/frame/temButtom.java index b146f94a..0285be5d 100644 --- a/buildpackage/src/test/java/com/hzya/frame/temButtom.java +++ b/buildpackage/src/test/java/com/hzya/frame/temButtom.java @@ -21,15 +21,23 @@ import com.hzya.frame.seeyon.cbs8.service.IPaymentService; import com.hzya.frame.stringutil.StringUtil; import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; import com.hzya.frame.util.AESUtil; +import com.mongodb.client.result.UpdateResult; import org.apache.http.protocol.HTTP; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.annotation.Id; +import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.mapping.Document; +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.test.context.junit4.SpringRunner; import javax.annotation.Resource; +import java.io.Serializable; import java.util.*; /** @@ -178,34 +186,105 @@ public class temButtom { private MongoTemplate mongoTemplate; @Test - public void mongodbinsert() { + public void mongodbTest() { + boolean flag = true; + TestUser testUser = new TestUser("1","张三","U001"); + for (int i = 0; i < 20; i++) { + int a = i+4; + TestUser user = new TestUser(String.valueOf(a),"张三"+a,"U00"+a); + //mongoTemplate.insert(user,"user"); + } //新增数据 - JSONObject jsonStr = new JSONObject(); - jsonStr.put("id","1"); - jsonStr.put("name","张三"); - jsonStr.put("code","001"); - mongoTemplate.insert(jsonStr,"user"); - System.out.println(jsonStr.toJSONString()); - } + //mongoTemplate.insert(testUser,"user"); + System.out.println(testUser.toString()); + + + //新增或修改数据 + testUser.setName("李四"); + //mongoTemplate.save(testUser,"user"); + System.out.println(testUser.toString()); + + //批量新增 + TestUser testUser1 = new TestUser("2","王武","U002"); + TestUser testUser2 = new TestUser("3","赵六","U003"); + List testUsers = new ArrayList<>(); + testUsers.add(testUser1); + testUsers.add(testUser2); + //mongoTemplate.insert(testUsers,"user"); + + //修改数据 + Query query= new Query(Criteria.where("id").is(testUser1.getId())); + //更新值 + Update update= new Update().set("name", testUser1.getName()+"up").set("code", testUser1.getCode()); + //更新查询满足条件的文档数据(全部) + //UpdateResult result = mongoTemplate.updateMulti(query, update, TestUser.class,"user"); + //if(result!=null){ + // System.out.println("更新条数:" + result.getMatchedCount()); + //} + + //删除数据 + Query query1 = new Query(Criteria.where("_id").is(testUser1.getId())); + //List result1= mongoTemplate.findAllAndRemove(query1, TestUser.class,"user"); + //System.out.println("删除的文档数据:" + result1.toString()); - @Test - public void mongodbSave() { - //新增数据 - JSONObject jsonStr = new JSONObject(); - jsonStr.put("id","1"); - jsonStr.put("name","张三2"); - jsonStr.put("code","001"); - mongoTemplate.save(jsonStr,"user"); - System.out.println(jsonStr.toJSONString()); - } - @Test - public void mongodbquery() { //查询所有 - List list = mongoTemplate.findAll(JSONObject.class, "user"); - System.out.println(list.toString()); + //List list = mongoTemplate.findAll(TestUser.class, "user"); + //System.out.println(list.toString()); + + + //根据id查询,注意是文档的id,不是数据行的id + //TestUser result2 = mongoTemplate.findById("1", TestUser.class,"user"); + //System.out.println("查询结果:" + result2.toString()); + + //查询一条数据 + Query query2 = new Query(Criteria.where("name").is("赵六")); + TestUser result3 = mongoTemplate.findOne(query2, TestUser.class,"user"); + System.out.println("查询结果:" + result3.toString()); + + //模糊查询 + Query query9 = new Query(Criteria.where("name").regex("张三")); + List result9 = mongoTemplate.find(query9, TestUser.class,"user"); + System.out.println("查询结果:" + result9.toString()); + //查询列表单个查询条件 + Query query4 = new Query(Criteria.where("name").is(testUser.getName())); + List result4 = mongoTemplate.find(query4, TestUser.class,"user"); + System.out.println("查询结果:" + result4.toString()); + + // 查询列表多个查询条件 + Criteria criteriaUserName = Criteria.where("name").is(testUser.getName()); + Criteria criteriaPassWord = Criteria.where("code").is(testUser.getCode()); + // 创建条件对象,将上面条件进行 AND 关联 + Criteria criteria = new Criteria().andOperator(criteriaUserName, criteriaPassWord); + // 创建查询对象,然后将条件对象添加到其中 + Query query5 = new Query(criteria); + List result5 = mongoTemplate.find(query5, TestUser.class,"user"); + System.out.println("查询结果:" + result5.toString()); + + // 创建条件对象,将上面条件进行 OR 关联 + Criteria criteria1 = new Criteria().orOperator(criteriaUserName, criteriaPassWord); + // 创建查询对象,然后将条件对象添加到其中 + Query query6 = new Query(criteria1); + List result6 = mongoTemplate.find(query6, TestUser.class,"user"); + System.out.println("查询结果:" + result6.toString()); + + // 创建条件对象条件进行 in 关联 + List ids = Arrays.asList("1", "2"); + // 创建条件 + Criteria criteria7 = Criteria.where("id").in(ids); + // 创建查询对象,然后将条件对象添加到其中 + Query query7 = new Query(criteria7); + List result7 = mongoTemplate.find(query7, TestUser.class,"user"); + System.out.println("查询结果:" + result7.toString()); + + //从第一行开始,查询2条数据返回 + Query query8 = new Query(Criteria.where("name").is(testUser.getName())).with(Sort.by("code")).limit(2).skip(0); + List result8 = mongoTemplate.find(query8, TestUser.class,"user"); + System.out.println("查询结果:" + result8.toString()); + + Query query10 = new Query(Criteria.where("name").is(testUser.getName())); + long count = mongoTemplate.count(query10,"user"); + System.out.println("统计结果:" + count); + } - - - }