`
yu120
  • 浏览: 79845 次
社区版块
存档分类
最新评论
阅读更多
package com.xbwen.po;

import com.bugull.mongo.BuguEntity;
import com.bugull.mongo.annotations.Entity;
import com.bugull.mongo.annotations.Id;

@Entity
public class Foo implements BuguEntity{
    @Id
    private String id;
    private String name;

    @Override
    public String getId() {
        return id;
    }

    @Override
    public void setId(String id) {
        this.id = id;
    }

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
}

 

package com.xbwen.dao.impl;

import com.bugull.mongo.BuguDao;
import com.xbwen.po.Foo;

public class FooDaoImpl extends BuguDao<Foo> {
    public FooDaoImpl(){
        super(Foo.class);
    }
    
}

 

package com.xbwen.dao;

import com.xbwen.po.Foo;

public interface FooDao extends BuguBase<Foo> {
   
}

 

package com.xbwen.context;
import com.bugull.mongo.BuguConnection;  
import javax.servlet.ServletContextEvent;  
import javax.servlet.ServletContextListener;  
  
public class MySystemListener implements ServletContextListener{  
    @Override  
    public void contextInitialized(ServletContextEvent event) {  
        //连接数据库  
        BuguConnection conn = BuguConnection.getInstance();  
        conn.connect("127.0.0.1", 27017, "test");
    }  
   
    @Override  
    public void contextDestroyed(ServletContextEvent event) {
        //关闭数据库连接
        BuguConnection.getInstance().close();  
    } 
}  

 

package com.xbwen.dao;


import java.util.List;

import com.bugull.mongo.BuguQuery;
import com.bugull.mongo.BuguUpdater;
import com.mongodb.DBCollection;
import com.mongodb.WriteResult;

public interface BuguBase<T> {

	/***插入数据***/
	/**添加一个对象*/
	public WriteResult insert(T t);
	/**添加多个对象*/
	public WriteResult insert(List<T> list); //批量插入
	/**添加或更新一个对象*/
	public WriteResult save(T t);//如果t中没有ID值,则为插入,若有ID值,则为修改。用户自定义ID除外。
	
	/***删除数据***/
	/**删除整个Collection*/
	public void drop();
	/**根据对象删除*/
	public WriteResult remove(T t);
	/**根据id删除*/
	public WriteResult remove(String id);
	/**批量删除*/
	public WriteResult remove(List<String> idList);
	/**按条件删除*/
	public WriteResult remove(String key, Object value);
	/**按条件删除*/
	public WriteResult remove(@SuppressWarnings("rawtypes") BuguQuery query);
	
	/***基本查询***/
	/** 根据id查询一个对象 */
	public T findOne(String id);
	/** 根据key-value查询一个对象 */
	public T findOne(String key, Object value);
	/** 查询全部 */
	public List<T> findAll();
	/** 查询全部,并排序,排序格式为orderBy-->{name:-1},其中1是升序,-1是降序*/
	public List<T> findAll(String orderBy);
	/** 分页查询全部,pageNum为页码,起始页为1,pageSize页容量大小 */
	public List<T> findAll(int pageNum, int pageSize);
	/** 分页查询全部并排序,orderBy格式{name:-1},其中1是升序,-1是降序,pageNum起始页,pageSize页容量大小  */
	public List<T> findAll(String orderBy, int pageNum, int pageSize);
	/** 根据id查询是否存在 */
	public boolean exists(String id);
	/** 根据key-value查询是否存在 */
	public boolean exists(String key, Object value);
	/** 查询总数目 */
	public long count();
	/** 根据key-value查询总数目 */
	public long count(String key, Object value);
	/** 查询某一字段的不重复值 */
	@SuppressWarnings("rawtypes")
	public List distinct(String key);
	/**
	 * 高级查询
	 * <br>-------------------------------------------
	 * <br>生成查询条件:is、notEquals、greaterThan、greaterThanEquals、
	 * lessThan、lessThanEquals、in、notIn、all、size、mod、existsField、
	 * notExistsField、regex、where、or、and
	 * <br>地理空间数据查询:near、withinCenter、withinBox
	 * <br>设置查询参数:slice、returnFields、notReturnFields、sort、
	 * pageNumber、pageSize
	 * <br>返回查询结果:result、results、count、exists、distinct
	 * <br>-------------------------------------------
	 * <br>注:支持连缀书写形式、支持分页、支持指定返回或不返回某些字段、支持
	 * Entity对象作为查询条件、支持字符串形式的排序:
	 * @return
	 */
	public BuguQuery<T> query();
	/**
	 * 修改数据
	 * <br>-------------------------------------------
	 * <br>修改属性值:set
	 * <br>删除属性列:unset
	 * <br>增加、减少数值:inc
	 * <br>乘以某个数值:mul
	 * <br>数组操作:push、pushEach、pull、popFirst、popLast
	 * <br>设置成较小值:min
	 * <br>设置成较大值:max
	 * <br>按位操作:bitwise
	 */
	public BuguUpdater<T> update();
	/** 获取数据集合,提供自定义服务 */
	public DBCollection getCollection();
}

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Forum</display-name>
  <listener>  
    <listener-class>com.xbwen.context.MySystemListener</listener-class>  
</listener> 
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

分享到:
评论
1 楼 石头茨 2015-01-23  
在maven (http://search.maven.org)项目中,找不到bugu-mongo-1.14.zip包。能将此项目上传打maven吗?

相关推荐

    Linux安装mongodb客户端

    sudo vim /etc/yum.repos.d/mongodb-org-4.2.repo 写入: [mongodb-org-4.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/ gpgcheck=1 enabled=1 gpg...

    MongoDB应用设计模式

    资源名称:MongoDB应用设计模式内容简介:无论是在构建社交媒体网站,还是在开发一个仅在内部使用的企业应用程序,《MongoDB应用设计模式》展示了MongoDB需要解决的商业问题之间的连接。你将学到如何把MongoDB设计...

    MongoDB(mongodb-org-server_5.0.4_amd64.deb)

    MongoDB Community Server(mongodb-org-server_5.0.4_amd64.deb)适用于适用于Debian10 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是...

    MongoDB Community(mongodb-linux-aarch64-ubuntu1804-5.0.8.tgz)

    MongoDB Community Server(mongodb-linux-aarch64-ubuntu1804-5.0.8.tgz)适用于Ubuntu 18.04 Arm芯片, MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决...

    MongoDB(mongodb-src-r5.0.4.tar.gz)

    MongoDB Community Server(mongodb-src-r5.0.4.tar.gz)源代码 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非...

    mongodb-linux-x86_64-4.0.18.tgz

    mv mongodb-linux-x86_64-4.0.18 mongodb 3、进入 mongodb 目录创建目录 db 和 logs cd /usr/local/mongodb mkdir db mkdir logs 4、进入到 bin 目录下,编辑 mongodb.conf 文件,内容如下: dbpath=/usr/local/...

    基于MongoDB的日志系统Mongodb-Log.zip

    mongodb-log 是一个基于MongoDB的Python日志系统。 MongoDB 的 Capped Collection是一个天生的日志系统,MongoDB自己的oplog就是用它来存储的,Capped Collection的特点是可以指定Collection的大小,当记录总大小...

    mongodb-driver-core-4.2.3-API文档-中文版.zip

    赠送jar包:mongodb-driver-core-4.2.3.jar; 赠送原API文档:mongodb-driver-core-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-core-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-core-4.2.3....

    基于MongoDb的图书管理系统.rar

    本系统是本人初学MongoDb时所写,代码不是很完美,基本实现图书管理系统的增删改查等基本功能,目前尚有一处缺陷未解决——在查询后只能在控制台看到结果,没有反馈到界面上,有兴趣的朋友可以加以修改,相信这是一...

    php-mongodb的扩展包

    php-mongodb的扩展包,MongoDB [2] 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据...

    2020年最新MongoDB 4.0专讲从入门到精通视频教程.txt

    day1:MongoDB数据库与其他数据库区别介绍及学习方法 day2:MongoDB运行环境搭建及运行 day3:MongoDB增删改查操作实践 day4:教你学会MongoDB聚合操作 day5:索引的特性及应用 day6:MongoDB实例搭建仓位管理API day7:...

    如何安装MongoDB 如何使用MongoDB

    本课程是一套关于MongoDB应用开发的实战性教程,名为《深入浅出MongoDB应用实战开发(基础、开发指南、系统管理、集群及系统架构)》,教程侧重于讲解MongoDB的常用特性及高级特性,从实际开发的角度出发对MongoDB...

    MongoDB笔记.docx

    一、MongoDB简介 3 二、MongoDB结构 3 二、MongoDB 数据库关系型(这里并不是值关系型数据库的关系) 3 1、MongoDB一对一关系型 3 2、MongoDB一对多关系型 4 3、MongoDB多对多关系型 4 三、创建数据库(mongodb_test...

    MongoDB教程基础入门

    教程名称:MongoDB教程基础入门 课程目录:【】MongoDB教程基础入门-代码【】MongoDB教程基础入门01第一讲上【】MongoDB教程基础入门02第一讲下【】MongoDB教程基础入门03第二讲上【】MongoDB教程基础入门04第二讲...

    MongoDB(mongodb-windows-x86_64-5.0.4.zip)

    MongoDB Community Server(mongodb-windows-x86_64-5.0.4.zip)适用于Windows MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于...

    【BAT必备】MongoDB面试题

    【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT必备】MongoDB面试题【BAT...

    MongoDB4.2分片及副本集群搭建

    MongoDB4.2分片及副本集群搭建 MongoDB集群 MongoDB分片 MongoDB副本 MongoDB副本集群

    MONGOdb视频教程地址.txt

    真实有效的mongodb视频教程地址 深入浅出 MongoDB 高清IT教程视频下载 1.1、-nosql与MongoDB.mp4 1.2、-MongoDB安装配置.mp4 1.3、-MongoDB?shell详.mp4 1.4、-MongoDB文档、集合、数据库的概念.mp4 1.5、-...

    mongodb介质.zip

    mongodb-org-4.2.3-1.el6.x86_64.rpm mongodb-org-server-4.2.3-1.el6.x86_64.rpm mongodb-org-tools-4.2.3-1.el6.x86_64.rpm mongodb-org-mongos-4.2.3-1.el6.x86_64.rpm mongodb-org-shell-4.2.3-1.el6.x86_64.rpm...

    五、MongoDB 学习PPT

    MongoDB 学习PPT

Global site tag (gtag.js) - Google Analytics