博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongonDB入门
阅读量:7196 次
发布时间:2019-06-29

本文共 1772 字,大约阅读时间需要 5 分钟。

MongonDB介绍

MongoDB 是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

MongonDB概念介绍

  • database mongon里面数据库的概念和其他关系型数据库一样,如mysql、oracle等

  • collection mongon里面collection类似于关系型数据库中的表,一类数据的集合,和其他数据库的区别就是数据库字段可以不固定

  • document mongon本身是面向文档的存储的介于关系与非关系型数据库,这里的document类似于mysql中的一条记录

  • field 数据库字段,和关系型数据一样

MongonDB使用

  • springboot

    • 添加pom依赖
    org.springframework.boot
    spring-boot-starter-data-mongodb
    复制代码
    • 创建数据库实体
    @Document(collection = "user")    public class User {    @Id    private ObjectId id; //数据库id 与数据库字段_id对应,org.bson.types.ObjectId    @Field(value = "user_name")    private String username;    @Field(value = "age")    private Integer age;    // 省略getter和setter}复制代码
    • 添加mongon配置
    spring:    data:        mongodb:            host: localhost            port: 26007            database: test 复制代码
    • 创建repository
    public interface UserRepository extends MongoRepository
    {}复制代码
    • 单元测试
    @RunWith(SpringJUnit4ClassRunner.class)@SpringApplicationConfiguration(Application.class)public class ApplicationTests {    @Autowired    private UserRepository userRepository;    @Before    public void setUp() {        userRepository.deleteAll();    }    @Test    public void test() throws Exception {        // 创建user,并保存        User user = new User();        user.setAge(10)        user.setUsername("hachel")        userRepository.save(user);              // 删除一个User,再验证User总数        u = userRepository.findByUsername("hachel");        userRepository.delete(u);        }}复制代码

附录

转载于:https://juejin.im/post/5c6a0921e51d45403f2aa465

你可能感兴趣的文章
中国雅虎和美国雅虎,你分的清吗?
查看>>
[翻译] PJR Signature View
查看>>
fis入门-单文件编译之文件优化(optimize)
查看>>
Hadoop2源码分析-序列化篇
查看>>
数据结构Java实现04----循环链表、仿真链表
查看>>
WindowsMobile/Win Form-界面自适应
查看>>
【语义未来】Twine和Scoutlabs揭示的冰山一角
查看>>
Spring MVC实现上传文件报错解决方案
查看>>
Swift基础之闭包
查看>>
hdu3339 In Action(Dijkstra+01背包)
查看>>
程序员成长规划
查看>>
TcpDump 抓包 传输数据包
查看>>
[LeetCode]147.Insertion Sort List
查看>>
rails torial 中css/js引用的版本坑
查看>>
[Java开发之路](5)异常详解
查看>>
VMware 11 安装 OS X 10.10 虚拟机
查看>>
Java学习之自动装箱和自动拆箱源码分析
查看>>
SDL2纹理渲染
查看>>
获取 iOS模拟器 里的安装包
查看>>
android p 模拟器开启刘海模式
查看>>