1.pom.xml导入jar包
 
        <!-- mongoDB -->
        <dependency>  
        <groupId>org.springframework.data</groupId>  
        <artifactId>spring-data-mongodb</artifactId>  
        <version>1.2.1.RELEASE</version>  
        <type>jar</type>  
        <scope>compile</scope>  
    </dependency>  
    <dependency>  
        <groupId>org.springframework.data</groupId>  
        <artifactId>spring-data-mongodb-cross-store</artifactId>  
        <version>1.2.1.RELEASE</version>  
        <type>jar</type>  
        <scope>compile</scope>  
    </dependency>  
    <dependency>  
        <groupId>org.springframework.data</groupId>  
        <artifactId>spring-data-mongodb-log4j</artifactId>  
        <version>1.2.1.RELEASE</version>  
        <type>jar</type>  
        <scope>compile</scope>  
    </dependency>  
        <!-- mongoDB -->
 
 
2.创建配置文件,spring-mongo.xml
 
 
<?xml version="1.0" encoding="UTF-8"?>
 
    <mongo:mongo host="127.0.0.1" port="27017" />
 
    <!-- mongo的工厂,通过它来取得mongo实例,dbname为mongodb的数据库名,没有的话会自动创建 -->
    <mongo:db-factory dbname="student" mongo-ref="mongo" />
 
    <!-- mongodb的主要操作对象,所有对mongodb的增删改查的操作都是通过它完成 -->
    <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
        <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
    </bean>
 
    <!-- 映射转换器,扫描back-package目录下的文件,根据注释,把它们作为mongodb的一个collection的映射 -->
    <mongo:mapping-converter base-package="com.jk.model" />
 
    <!-- mongodb bean的仓库目录,会自动扫描扩展了MongoRepository接口的接口进行注入 -->
    <mongo:repositories base-package="com.jk.mongo.impl" />
 
    <context:annotation-config />
 
</beans>
    
 
 
3.web.xml加载spring-mongo.xml配置文件,
 
 
 
4.创建实体
//mongnDB中对应的表,跟hibernate相似,实体与表建立映射关系,完成操作类的形式操作数据库
//参数为mongoDB中表名
@Document(collection = "user")
声明一个字段,为key,其他字段为值;key为唯一标识,可随便定义,但不可重复,
如果想插入两个实体的字段, 
就把第一个实体中声明一个属性,从而来接收第二张表的值;
 
@Document(collection = "user")
public class UserEntity {
 
    @Id
    private String id;
 
 
 
5.创建接口,
 
 
6.创建一个实线类,使用@Repository并且注入,相当于Dao层的注入;
实例化MongoTemplate实例(关键:所有对mongoDB的操作都是使用MongoTemplate来完成的,相当于hibernate中的HibernateTemplate)
    @Autowired
    private MongoTemplate mongoTemplate;
 
 
 
 
 
 
 
 
 
/**
 * query类的使用,
 * query常用方法,
 * query.with
 * addCriteria
 * 
 * mongoTemplate类的常用方法
 * insert
 * save
 * find
 * findOne
 * update
 * remove
 * 
 */
 
 

1)save

意思是,当记录不存在时插入,或者是当记录已存在是更新,实际上就

save or update

的意思。

2) insert

的意思是:当记录不存在时插入,而如果记录存在时则忽略,继续插

入。

项目融入mongoDB的更多相关文章

  1. [C#项目开源] MongoDB 可视化管理工具 (2011年10月-至今)

    正文 该项目从2011年10月开始开发,知道现在已经有整整5年了.MongoDB也从一开始的大红大紫到现在趋于平淡. MongoCola这个工具在一开始定位的时候只是一个Windows版本的工具,期间 ...

  2. 跟我一起用node-express搭建一个小项目(mongodb)[二]

    我的小项目主要是会用到MongoDB. 呵呵,我也是现学现卖. 都说小公司十八般武艺样样稀疏,没有办法啊! 兵来兵挡,将来将挡!自己是个兵呢?还是一个将呢! 没有公司培养,就自己培养自己呗.差的远一点 ...

  3. docker node项目 连接mongodb

    在弄docker部署node项目的时候遇到了连接mongdb的问题,记录一下问题解决办法 一.Docker 安装 MongoDB 1.查找Docker Hub上的mongo镜像 [root@VM_49 ...

  4. 【vue】MongoDB+Nodejs+express+Vue后台管理项目Demo

    ¶项目分析 一个完整的网站服务架构,包括:   1.web frame ---这里应用express框架   2.web server ---这里应用nodejs   3.Database ---这里 ...

  5. nodeJS学习(8)--- WS/...开发 NodeJS 项目-节3 <使用 mongodb 完整实例过程>

    使用 mongodb 的小系统 参考:https://my.oschina.net/chenhao901007/blog/312367 1. Robomongo 创建项目的数据库和数据表 参考:htt ...

  6. 基于 flow.ci 实现 PHP 项目自动化持续集成

    高效程序员的习惯之一--让开发流程自动化.Automating shapes smarter future. 这是一个关于如何快速实现 PHP 项目自动化持续集成的快速指导.无论你是否使用过持续集成, ...

  7. MongoDB高可用复制集分片集群搭建

    1     逻辑架构 1.1     逻辑架构图 1.2     组件说明 一.mongos(query routers):查询路由,负责client的连接,并把任务分给shards,然后收集结果.一 ...

  8. 利用mongodb开发lbs应用实践【转】

    近期作为突击队员,与同事一起突击构建了一个简单的lbs系统.当前比较主流的做法是使用mongodb,因为其已经封装了常用的lbs基本操作(如查找附近的人),功能非常强大,对于开发周期只有一周的项目,m ...

  9. 【转】MongoDB资料汇总专题

    1.MongoDB是什么 MongoDB介绍PPT分享 MongoDB GridFS介绍PPT两则 初识 MongoDB GridFS MongoDB GridFS 介绍 一个NoSQL与MongoD ...

随机推荐

  1. mybatis如何成功插入后获取自增长的id

    使用mybatis向数据库中插入一条记录,如何获取成功插入记录的自增长id呢? 需要向xml配置中加上一下两个配置: <insert id="add" useGenerate ...

  2. VS2012恢复默认设置的2种方法

    方法一: 工具 → 导入和导出设置 → 重置所有设置 → 下一步 → 选择“是否保存当前设置”,下一步 → 选择“要重置的开发语言(如,Visual C# 开发设置)” → 完成. 方法二: 1.依次 ...

  3. Data flow diagram-数据流图

    A DFD shows what kind of information will be input to and output from the system, how the data will ...

  4. 运维派 企业面试题1 监控MySQL主从同步是否异常

    Linux运维必会的实战编程笔试题(19题) 企业面试题1:(生产实战案例):监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员.提示:如果没主从同步环境,可以用下面文本放到文件里读 ...

  5. ArcGIS api for javascript——加入动态地图

    描述 这个示例展示了增加一个按用户缩放或平移服务器每次绘制的地图.这样的地图没有切片的cache并被调用一个动态地图服务图层.ArcGISDynamicMapServiceLayer表示ArcGIS ...

  6. ADL & 实参相依的查找 & 成员与非成员的查找

    也就是会根据实参,所处在的名字空间,来查找对应名字空间里面的函数. 对于<<也是常见的场景,会根据实际要打印出来的下一个操作数,来决定调用哪个命名空间里面的函数. 注意,不同命名空间里面的 ...

  7. Mysql忘记rootpassword

    1,停止MYSQL服务,CMD打开DOS窗体.输入 net stop mysql 2,在CMD命令行窗体,进入MYSQL安装文件夹 比方E:\Program Files\MySQL\MySQL Ser ...

  8. h5语音播放(移动端)

    <!--语音导航 start--> <div style="border:0px solid red;width:100%;height:72px;position:rel ...

  9. tp5中的配置机制

    默认在application中, 一个config.php, 一个database.php, 还有一个extra文件夹,里面存放一些零散的配置. 如果在index.php初始化中调整配置路径, 那么e ...

  10. Intellij Idea创建的第一个JavaWeb程序

    第一个JavaWeb程序 1. 创建 2. 目录结构 src目录用于放java源文件,web目录用于放web资源,WEB-INF是Java web应用固定的存放配置及类库的目录,index.jsp是我 ...