当前位置: 首页 > news >正文

山东大学软件学院nosql实验四

实验题目:

使用Java做简单数据插入

实验内容

用API方式,做数据插入。

使用Java语言实现数据插入界面,为实验一建立的学生、教师、课程表插入数据,可以在前端界面中录入数据之后保存,也可以导入Excel中的数据。

实验步骤与内容:

  1. 实现单条文档数据的插入(以在student表插入为例):
  1. 在service类中添加save函数,在controller类中添加方法,接收前端插入数据请求,并且为前端返回具体数据

前端进行请求即可

在前端填写相关信息后即可插入成功

  1. 批量插入数据

由于MongoTemplate本身支持数据的批量操作,所以我们可以直接调用这个方法,大体的思路为从前端获取用户上传的文件,然后后端使用easy-poi将数据读出来并进行整理,然后调用insert方法进行插入即可

2.1

首先需要在pom.xml文件中添加easypoi相关依赖,使得在 Java 应用程序中处理 Excel 文件变得更加便捷

然后在student类中添加Excel注释,使 Student 类能够与 MongoDB 数据库和 Excel 文件之间进行有效的数据映射。

然后在service层添加insertMany方法,使用ExcelImportUtil来从MultipartFile对象中读取 Excel 文件的数据,将其转换为Student类型的列表,然后使用mongoTemplate工具类来批量插入这些数据到 MongoDB 中:

然后在controller层添加upload方法,实现前后端信息传递:

2.2前端实现

使用<el-upload>组件,上传本地Excel文件并传递给后端

批量插入效果展示:

插入成功之后就可以在表格中查看到已经批量插入了xlsx文件里的所有数据(我插入的文件里只有这两条数据)(因为此处涉及个人信息,所以只有一条截图):

观察数据库,可以看到,上述几条文档已经正确插入数据库了。

Teacher类和course以此类推即可

实验结果与分析:

本次实验主要学习了单条插入和批量插入Excel文件的前后端实现,同时也遇到了难点,就是如何把文件解析,经过查询决定利用easypoi库解析Excel文件,生成对象列表,最后成功解决,通过本次实验更加了解了save、insert的方法,学到了非常多的内容。

http://www.dtcms.com/a/35018.html

相关文章:

  • docker离线安装及部署各类中间件(x86系统架构)
  • 【Microsoft PowerPoint for Mac】2分钟配置-MAC一键删除PPT中的所有备注
  • MTK Android12 预装apk可卸载
  • 一文讲解Redis中和本地缓存之间的一致性问题及区别等
  • 用Deepseek直接在word中完成论文的润色(中-中,中-英, 英-中)
  • 如何安装VMware
  • 基于不完整多模态神经影像的阿尔茨海默病诊断领域特定信息保留|文献速递-医学影像人工智能进展
  • 深度学习训练平台建设中的性能优化实践
  • [特殊字符]清华大学:DeepSeek从入门到精通.pdf(清华领航,驾驭DeepSeek,开启AI新境界)
  • ZT11 压缩二维码
  • 【目标检测】目标检测中的数据增强终极指南:从原理到实战,用Python解锁模型性能提升密码(附YOLOv5实战代码)
  • Mac下VSCode调试skynet的lua环境配置
  • 【前端基础篇】Day 1
  • Postman操作(接口测试、生成测试报告、MockServer等)
  • 检查模型配置参数
  • 软件测试的基础入门(一)
  • 一文详解U盘启动UEFI/Legacy方式以及GPT/MBR关系
  • 11、集合框架
  • HOW - 个人创业(融资篇)
  • 如何安装vm 和centos
  • python目录
  • db.session.delete是什么意思
  • 10分钟熟练掌握宝兰德中间件部署 iServer
  • 【数据结构第十六节】实现链式结构二叉树(详细递归图解—呕心沥血版!)
  • 嵌入式科普(32)指向寄存器的指针变量2---可变指针
  • 世优科技国内首家 MR 体验店开业,打造 MAS 任意门奇幻之旅
  • 基于PSO-LSTM长短期记忆神经网络的多分类预测【MATLAB】
  • IO进程 day05
  • MobileNet 改进:添加SpatialGroupEnhance 增加语义特征学习能力
  • STM32-智能小车项目