欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 资讯 > 山东大学软件学院nosql实验三

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

2025/2/25 15:09:42 来源:https://blog.csdn.net/m0_74672734/article/details/145838741  浏览:    关键词:山东大学软件学院nosql实验三

实验题目:

用Java做简单查询(2学时) 

实验内容

用API方式,做简单查询。

实验要求

在以下要求中选择至少2个,使用Java语言实现数据查询,最终把数据输出到前端界面。

(1)找出年龄小于20岁的所有学生

(2)找出年龄小于20岁且是软件学院的学生

(3)找出学生关系中的所有学生

(4)求所有学生的姓名、年龄

(5)找出年龄小于20岁的学生的姓名、性别

(6)检索所有课程情况

(7)检索先行课号为“300001”的课程名

(8)找出年龄大于50岁的老师

(9)找出所有的男老师

(10)找出所有在CS学院的老师

实验步骤与内容:

后端基于Springboot框架搭建,使用Java实现数据查询,并将结果返回给前端展示。前端展示效果见4.搭建前端页面。本实验实现了所有的10个查询题目,但因为原理差不多,所以只详细解释一个,在最后会给出所有的结果展示。

一、后端

  1. 首先建立springboot项目,并且与MongoDB进行连接,具体操作为:在application.properties文件中添加MongoDB配置

并且连接数据库user202200300224:

检查是否连接成功,在query console中新建查询db.course.find()查出相应结果,表示连接成功:

  1. 为student、course、studentcourse、teacher、teachercourse建立实体model类,在此处以student类为例(@Id注解用于标识MongoDB中的_id字段):

  1. 为每个类创建Repository,用于封装数据查询和存储的逻辑。创建studentRepository类,里为面是所有查询语句的方法。

对于findAll方法和findByXX等方法,MongoRepository已经集成,直接调用即可。同时也可用@Query注解实现自定义查询。

  1. 创建Service包,用于完成业务逻辑,它的作用是调用Repository提供的方法,并且为Controller层提供接口。

  1. 创建controller类,用于前后端交互,接收前端请求,并且为前端返回具体数据

  • 前端项目搭建:

前端的任务就是完成数据的展示工作,是以表格的形式展示,因为本次实验涉及到student、teacher、course三个类别的查询,所以建立了三个界面来分别展示部分查询

具体效果为:

实验结果与分析:

本次实验正式进入正篇,开始运用前端展示相应的查询数据。在对Java与MongoDB的集成有了一定的了解后,我搭建了用Spring Boot和Vue3的前后端分离项目,并成功完成了10个查询,在此过程中,遇到了许多技术难题,但都通过持续的努力得以解决。对于大多数查询需求,我利用MongoDB的查询语法,如 findAll 来检索所有文档,或findByXxx来执行条件查询,取得了良好的效果。在处理特定需求4和5时,使用query字段进行查询,使用find({}, {"NAME":1, "AGE":1})这种样式即可实现特定查询

通过本次实验,我再次拾起了Java课设和web课设所学的内容,重新掌握了Spring Boot框架,也学会了MongoDB数据库的基本用法及配置方法,还学会了如何使用注解、接口和工具类来简化开发流程。为以后的实验打下了基础

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词