
学习·NOSQL
文章平均质量分 76
飘去数星星
这个作者很懒,什么都没留下…
展开
-
山东大学软件学院nosql实验七
courWithStu()方法则通过调用 findDistinctCidFromSc 获取所有的课程 CID,然后在 course 集合中查找这些课程对应的详细信息,排除 _id 字段,并返回一个包含符合条件的 Course 对象列表。另外还认识到MongoDB的聚合管道强大且灵活,能够完成复杂的数据处理,且和SQL在一些操作上有相似之处,如 $group 相当于 SQL 的 GROUP BY操作,在实验中遇到的一个小问题是MongoDB非常注重大小写,在编写代码的时候一定要注意!原创 2025-02-25 10:00:00 · 293 阅读 · 0 评论 -
山东大学软件学院nosql实验六
student_course表是一个关系表,用于表示学生和课程之间的关联关系,根据MongoDB的特性,所以不会在 SpringBoot 中创建对应的实体类。本次实验完成后,我对如何使用聚合操作符来实现多表联合查询,以及如何使用mongoTemplate对象来直接操作数据库有了一定的了解,也让我对MongoDB数据库的关系表操作有了更深入的理解和掌握,收获颇丰。使用Java语言实现学生选课功能界面,根据录入的学号列出已选课程,可以更新已选课程,也可以新增选课。用API方式,做学生选课功能。原创 2025-02-25 09:30:00 · 250 阅读 · 0 评论 -
山东大学软件学院nosql实验五
本次实验与实验三大体相似,实现过程较为容易,其中的难点是与插入不同的是更新需要保留原有的OId,而且需要将id从ObjectId类映射为String类的问题。对于回传的MultipartFile类型文件,首先将文件流读入为对象列表,然后逐个读取对象并调用save()方法,逐个更新。使用Java语言实现数据更新界面,为实验一建立的学生、课程、教师表的数据进行更新操作,可以选择一条数据更新信息,也可以在表格中一次性更新多条数据。用API方式,做数据更新(类似SQL中的update语句功能)。原创 2025-02-25 09:00:00 · 251 阅读 · 0 评论 -
山东大学软件学院nosql实验四
本次实验主要学习了单条插入和批量插入Excel文件的前后端实现,同时也遇到了难点,就是如何把文件解析,经过查询决定利用easypoi库解析Excel文件,生成对象列表,最后成功解决,通过本次实验更加了解了save、insert的方法,学到了非常多的内容。由于MongoTemplate本身支持数据的批量操作,所以我们可以直接调用这个方法,大体的思路为从前端获取用户上传的文件,然后后端使用easy-poi将数据读出来并进行整理,然后调用insert方法进行插入即可。用API方式,做数据插入。原创 2025-02-24 21:24:49 · 411 阅读 · 0 评论 -
山东大学软件学院nosql实验三
在对Java与MongoDB的集成有了一定的了解后,我搭建了用Spring Boot和Vue3的前后端分离项目,并成功完成了10个查询,在此过程中,遇到了许多技术难题,但都通过持续的努力得以解决。对于大多数查询需求,我利用MongoDB的查询语法,如 findAll 来检索所有文档,或findByXxx来执行条件查询,取得了良好的效果。前端的任务就是完成数据的展示工作,是以表格的形式展示,因为本次实验涉及到student、teacher、course三个类别的查询,所以建立了三个界面来分别展示部分查询。原创 2025-02-24 21:20:42 · 1200 阅读 · 0 评论 -
山东大学软件学院nosql实验二
3.之后打开命令行,输入导入csv文件的命令:比如:mongoimport -h 127.0.0.1 -d user202200300224 -c course --type csv --headerline --upsert --file E:\小刘的桌面\NOSQL实验lpy\course.csv就可以将csv文档数据导入到user202200300224这个数据库里的course这个collection中。--upsert:如果导入的数据已经存在于数据库中,则更新现有文档。原创 2025-02-24 21:17:12 · 592 阅读 · 0 评论 -
山东大学软件学院nosql实验一环境配置
打开cmd窗口,输入$ mongod --version,检查是否安装成功,如果可以看到mongodb的版本,说明已经安装成功。$ 在test集合中插入一条数据:db.test.insertOne({keyaa:"1234"})$ 格式化打印:db.test.find().forEach(printjson)$ use NOSQLexp:切换到NOSQLexp数据库/命名空间。,若页面返回结果如下图所示,则说明MongoDB启动成功。$ 返回集合中的数据:db.test.find()原创 2025-02-24 21:11:20 · 442 阅读 · 0 评论