|
该文档适用于MongoDB数据库结合Java实际项目,适合刚接触的同学们尽快接触并上手开发!
在学习新的知识时,请一定要放松心情,切勿被出现的错误和耽误的时间扰乱思绪,多看源码;紧张时请与心爱的人聊聊天,转换思路;网上查不到的写法请在源码中寻找答案,版本不同差别较大!
一. Windows10安装MongoDB
安装教程地址:https://blog.csdn.net/weixin_43454365/article/details/126215155?spm=1001.2014.3001.5501
二. 使用IDE创建SpringBoot项目
例,使用idea创建项目时,可直接在nosql选项中选择添加MongoDB;生成SpringBoot项目后,pom.xml文件自带spring-boot-starter-data-mongodb。
三. 总体目录结构
四. 创建config配置类
重写MongoTemplate,并使用@Bean注解注入到程序中,在具体使用CRUD方法时,在该类中引用MongoTemplate。
五. 新增entity实体类
1.一定要写上@Document(collection = "文档名/表名")注解,代表该类是MongoDB数据库的某个文档(表)的实体类;collection代表具体的文档名/表名"。
2.在字段名称上添加@Field(value = "tag_name")注解,代表该属性对应文档(表)的某个字段;value代表具体的字段名称。
六. 在SpringBoot项目中MongoDB数据库的连接方式
1.没有在数据库中设置账户密码的连接方式
mongodb://IP:端口号/数据库名称,问号后边的美容根据实际情况,可写可不写。
七. 代码中写insert方法
SpringBootTest测试代码示例:
1.insert方法使用实体类和表名称两个参数的方法,源码如下否则会出现代码不会报错,但数据不能插入到文档名(表)中,必须要有相对应的文档名/表名。
2.数据插入成功后
查看MongoDB对应的文档名/表,会显示
注:id在没有自定义的情况下,由数据库系统自创自增。
八. 代码中写query方法
SpringBootTest测试代码示例:
1.query引包import org.springframework.data.mongodb.core.query.Query;先确定查询的方式,生成查询条件;例如,本次使用文档/表中的“tag_name”字段,确定字段值,使用find方法查询数据。
2.find方法要使用带查询条件,实体类,文档/表名三个参数的方法,源码如下;
3.查询成功后,会显示全部数据
注:当查询字段值重复时使用findOne方法(参数同find),系统也不会报错,MongoDB数据库会自动返回插入时间最早的数据。
九. 遇到并解决的问题
1. 在查询中系统出现报错Query failed with error code 2 with name 'BadValue' and error message 'Field 'locale' is invalid in: { locale: "vibration_realtime_data" }' on server 127.0.0.1:27017; nested exception is com.mongodb.MongoQueryException: Query failed with error code 2 with的主要原因
答:需要注意实体类中的注解
该注解中"collection"和”collation”是两个功能不同的注解,一定要注意;源码如下:
来源:http://www.yidianzixun.com/article/0kJbNJ0x
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|