您的位置:首页 > 数据库 > Mongodb

Mongodb简单例子

2016-09-19 09:21 411 查看
1、实体类

@Document(collection = "t_user")

public class MongoUser implements Serializable{

    private static final long serialVersionUID = -1409493968092980571L;

    @Id

    private Integer id;

    private String username;

    private String passwrod;

    private Integer age;

    public Integer getId() {

        return id;

    }

    public void setId(Integer id) {

        this.id = id;

    }

    public String getUsername() {

        return username;

    }

    public void setUsername(String username) {

        this.username = username;

    }

    public String getPasswrod() {

        return passwrod;

    }

    public void setPasswrod(String passwrod) {

        this.passwrod = passwrod;

    }

    public Integer getAge() {

        return age;

    }

    public void setAge(Integer age) {

        this.age = age;

    }

    

    @Override

    public String toString() {

        return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);

    }

    

}

2、Mongodb相应操作方法例子

 @RequestMapping(value = "/mongoUser.do", produces = "text/html;charset=UTF-8")

    public String mongoUser(HttpServletRequest request, HttpServletResponse response) {

        // 添加用户

//        for(int i = 2; i < 10; i ++){

//            MongoUser mongoUser = new MongoUser();

//            mongoUser.setId(i);

//            mongoUser.setUsername("admin" + i);

//            mongoUser.setPasswrod("123456");

//            mongoUser.setAge(20 + i);

//            mongoTemplate.insert(mongoUser);

//        }

        // 查询所有用户

//        List<MongoUser> users = mongoTemplate.findAll(MongoUser.class);

//        for (MongoUser user : users) {

//            System.out.println(user.getId());

//        }

//        // 根据id查询用户

//        MongoUser mongoUser = mongoTemplate.findById(1, MongoUser.class);

//        System.out.println("根据用户id查询的用户:" + mongoUser);

        //条件查询

//         Query query = new Query();

//         Criteria criteria = new Criteria();

//         criteria.and("username").is("admin");//字段username="admin"

//         query.addCriteria(criteria);

//         query.limit(2);

//         List<MongoUser> users = mongoTemplate.find(query, MongoUser.class);

//         System.out.println(users.size()+"================");

//         for(MongoUser user2 : users){

//             System.out.println(user2.getId());

//         }

//        mongoTemplate.updateFirst操作、mongoTemplate.updateMulti操作、this.mongoTemplate.upsert操作.

//        分别表示修改第一条、修改符合条件的所有、修改时如果不存在则添加.

        // 更新

//          Query query = new Query();

//          Criteria criteria = new Criteria();

//          criteria.where("id").is(1);

//          query.addCriteria(criteria);

////          mongoTemplate.updateFirst(query, Update.update("username", "admin1"), MongoUser.class);

//          Update update = new Update();

//          update.set("username", "admin1");

//          mongoTemplate.updateFirst(query, update, MongoUser.class);

         // 删除(带条件)

         // Query query = new Query();

         // Criteria criteria = new Criteria();

         // criteria.where("id").is(2);

         // query.addCriteria(criteria);

         // mongoTemplate.remove(query, MongoUser.class);

        //多条件查询

//      Query query = new Query();

//      Criteria criteria = new Criteria();

////      criteria.andOperator(Criteria.where("username").is("admin1))

//      criteria.and("username").is("admin1");

//      criteria.and("id").lt(10);

//      query.addCriteria(criteria);

//      query.limit(2);

//      List<MongoUser> users = mongoTemplate.find(query, MongoUser.class);

//      System.out.println(users.size()+"================");

//      for(MongoUser user2 : users){

//          System.out.println(user2.getId());

//      }

        //分页查询

//        Query query = new Query();

//        query.skip(0);

//        query.limit(2);

//        List<MongoUser> users = mongoTemplate.find(query, MongoUser.class);

//        System.out.println(users.size()+"================");

//        for(MongoUser user2 : users){

//            System.out.println(user2.getId());

//        }

        

        //查询数量

//        Query query = new Query();

//        Criteria criteria = new Criteria();

////        criteria.and("username").is("admin1");

//        criteria.and("id").lt(10);

//        query.addCriteria(criteria);

//        Long count = mongoTemplate.count(query, MongoUser.class);

//        System.out.println(count);

       //排序

//      Query query = new Query();

//      query.limit(5);

////      query.sort().on("_id", Order.DESCENDING);

//      query.with(new Sort(Direction.DESC,"_id"));

//      List<MongoUser> users = mongoTemplate.find(query, MongoUser.class);

//      for(MongoUser user2 : users){

//          System.out.println(user2.getId());

//      }

        //分组查询

         GroupBy groupBy = GroupBy.key("username").initialDocument("{count:0}").reduceFunction("function(doc, prev){prev.count+=1}");

         GroupByResults<MongoUser> r = mongoTemplate.group("t_user", groupBy, MongoUser.class);

         BasicDBList list = (BasicDBList)r.getRawResults().get("retval");

         for (int i = 0; i < list.size(); i ++) {

             BasicDBObject obj = (BasicDBObject)list.get(i);

             System.out.println("=========" + obj.get("count"));

         }

        return "login";

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: