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

基于SSM的教务管理系统运行教程

文章目录

    • 1、前期必备
      • 1.1、所需软件版本说明
      • 1.2、下载源码
      • 1.3、下载开发工具
      • 1.4、下载JDK并配置环境变量
      • 1.5、安装数据库和数据库管理工具
      • 1.6、安装配置Maven
    • 2、将SQL文件导入到数据库
      • 2.1、新建MySQL连接
      • 2.2、新建数据库并导入SQL
    • 3、用Eclipse运行程序
      • 3.1、导入educationalManage项目
      • 3.2、配置Maven
      • 3.3、配置Mysql
      • 3.4、配置Tomcat
      • 3.5、运行educationalManage项目
    • 4、常见问题及解决方式
      • 4.1、项目导入后中文注释乱码问题
      • 4.2、导入后项目名称前有可能出现红叉叉
      • 4.3、Eclipse中Tomcat的add and remove找不到项目
      • 4.4、项目运行时报错:配置应用程序监听器[org.springframework.web.context.ContextLoaderListener]错误
      • 4.5、运行项目时HTTP状态码出现 404、500

1、前期必备

1.1、所需软件版本说明

为避免出现其它问题,建议软件版本跟表中保持一致

软件版本说明
Eclipse2018-09开发工具版本无特殊要求
JDK1.8推荐使用JDK1.8
MySQL5.7.26使用MySQL5.5+,强烈推荐使用MySQL5.7.x
Navicat Premium12.0.16版本无要求
Maven3.6.3版本无要求

1.2、下载源码

本教程用到的源码已经放到网盘了,在公众号【IT学长】回复关键词“20221102”或者“教务管理系统”下载教务管理系统(educationalManage)源码包。

本系统开发设计文档:《基于SSM的教务管理系统设计与实现(附源码下载地址)》

1.3、下载开发工具

作者用目前非常流行的Eclipse开发工具做演示,大家可直接在百度搜索关键词下载。

1.4、下载JDK并配置环境变量

作者使用JDK1.8版本,也建议初学者使用该版本。JDK下载和环境变量配置在百度有很多教程,这里不再重复。

1.5、安装数据库和数据库管理工具

目前作者所有毕设源码数据库都用MySQL5.7版本,强烈建议初学者跟作者保持一致,避免出现其它错误,待运行成功后再根据需要调整数据库版本。

其它版本的MySQL卸载教程和MySQL5.7安装教程请看作者另一篇文章:《MySQL绿色版安装与卸载教程》

数据库管理工具作者用Navicat,没有版本要求,自己在百度搜索,傻瓜式安装即可,也可以用其他数据库管理工具。

1.6、安装配置Maven

本系统用到项目管理工具Maven来统一Jar包版本管理,关于Maven的下载安装和配置教程请阅读作者的另一篇文章:《Maven安装与配置教程》,教程中对每个步骤的描述都很详细,大家根据文章操作就可以了。

做完以上工作后,本系统运行所需的基础软件就准备完成了。

2、将SQL文件导入到数据库

2.1、新建MySQL连接

1、打开安装好的Navicat(数据库管理工具)–》连接 --》MySQL

2、输入相关信息

  • 连接名:自定义(随便起)
  • 主机:使用默认localhost或127.0.0.1
  • 端口:使用默认3306
  • 用户名:填写MySQL的用户名(使用root即可)
  • 密码:填写MySQL的密码(安装时设置的密码)

注意:使用了上面作者提供的数据库安装方式的,密码默认为空!

3、输入以上信息后,先点击“连接测试”看看信息是否正确,正确后点击“确定”。

2.2、新建数据库并导入SQL

1、test 右击–>新建数据库

数据库名:查看“教务管理系统(educationalManage)”源码包,用记事本工具打开educational_manage.sql文件。

下载好的源码包解压后:

注:“教务管理系统(educationalManage)”源码包在本文1.2章节下载

字符集:utf8
排序规则:utf8_general_ci

2、双击新建的数据库–>待数据库名由灰变亮后–>右击数据库名–>运行SQL文件–>选择文件educational_manage.sql -->点击开始–>关闭

注意:SQL文件在下载好的源码包中

3、刷新数据库表后即可看到导入的数据库表了

完成以上步骤后,sql文件已成功导入到数据库中了。

3、用Eclipse运行程序

3.1、导入educationalManage项目

1、打开之前安装好的eclipse开发工具,file --> import -->Maven–>Existing Maven Projects -->Next

2、选择下载好的 educationalManage 即可

3、导入后,如下图所示

3.2、配置Maven

1、打开Eclipse,Window–》Preferences–》Maven–》User Settings–》配置Settings.xml文件路径–》Apply and Close

2、项目名右键–》Run As–》Maven clean–》查看结果

3、项目名右键–》Run As–》Maven install–》查看结果

3.3、配置Mysql

educationalManage --》src–》main–》resources–》db.properties --》修改数据库名、数据库用户名、数据库密码 --》保存

3.4、配置Tomcat

File --》New --》Other --》Server --》Next(配置Tomcat) --》Next(将项目添加到Tomcat)–》Add and Remove

3.5、运行educationalManage项目

看到下图,说明运行成功了

7、打开浏览器输入http://localhost:8080/educationalManage/,输入对应的用户名,密码

  • 系统管理员【用户名:admin 密码:admin】
  • 教师【用户名:1001 密码:1001】
  • 学生【用户名:10001 密码:10001】

4、常见问题及解决方式

4.1、项目导入后中文注释乱码问题

项目导入后出现中文注释乱码问题,如下图所示:

解决方法:改变整个Eclipse工作空间的编码格式

在Window–》Preferences–》General–》Workspace下,面板Text file encoding 选择UTF-8格式(或者从GBK改成 UTF-8)

改变Eclipse工作空间的编码格式后:

4.2、导入后项目名称前有可能出现红叉叉

导入后项目名称前有可能出现红叉叉,这时候不要着急运行项目(运行会报错),根据以下步骤解决。

1、鼠标放到项目名称上右击 --》Build Path -->Configure Build Path

2、点击 Libraries -->检查报错项

上图中,我们看到 JRE System Library[Java](unbound)报错,这是因为未找到 JDK,鼠标放到报错项上 --》点击右侧的Edit按钮 --》选择安装好的JDK(JRE)环境就好了

未选择JDK(JRE)之前如下图:

选择JDK(JRE)之后如下图:

注意:主要检查图片中标红的两项,报错时通常出现:XXXunbound

在这里插入图片描述

  • Apache Tomcat v9.0[Apache Tomcat v9.0](unbound)
  • JRE System Library[jdk](unbound)

若出现以上报错时,直接复制“Apache Tomcat v9.0[Apache Tomcat v9.0](unbound)”去百度。

同样的方式复制“JRE System Library[jdk](unbound)”去百度

4.3、Eclipse中Tomcat的add and remove找不到项目

1、右键项目—>Propertis

2、Project Facets—>将Dynamic Web Module打勾

也可以搜索关键词“Eclipse中Tomcat的add and remove找不到项目”去百度寻求解决方法。

4.4、项目运行时报错:配置应用程序监听器[org.springframework.web.context.ContextLoaderListener]错误

1、报错原因

该项目下所引用的 jar 包没有同步到 lib 目录下

2、解决办法

选择所运行的项目>右击Build Path>Configure build path>Deployment Assembly>add>选择Java Build Path Entries>选择Maven Dependencies

4.5、运行项目时HTTP状态码出现 404、500

HTTP状态码 404: 官方解释是服务器找不到请求的网页。本项目中出现404时首先检查访问地址是否正确,其次检查服务是否正常启动(Tomcat)。

HTTP状态码 500: 官方解释是服务器内部错误,服务器遇到错误,无法完成请求。本项目中出现500时表明前端请求已经到达后端服务器,只是在逻辑处理中遇到错误,具体错误原因需要我们查看Eclipse控制台(Console)。特别注意:在本项目中输入用户名和密码后点击登录时出现500状态码,一般是数据库连接失败,MySQL数据库版本高于5.7时会出现上述情况(建议使用MySQL5.7.x)。

以上就是本期的所有内容,关注【IT学长】,跟着学长学IT。

相关文章:

基于SSM的教务管理系统运行教程

文章目录 1、前期必备1.1、所需软件版本说明1.2、下载源码1.3、下载开发工具1.4、下载JDK并配置环境变量1.5、安装数据库和数据库管理工具1.6、安装配置Maven 2、将SQL文件导入到数据库2.1、新建MySQL连接2.2、新建数据库并导入SQL 3、用Eclipse运行程序3.1、导入educationalMa…...

Docker(六)、Docker-compose简单了解

Docker-compose简单了解 一、简单了解-->概述一)、官方提供的容器编排工具:Docker-compose特点:二)、Docker-compose安装三)、浅实践下四).以上步骤遇到问题及解决 一、简单了解–>概述 Docker-comp…...

互联网Java工程师面试题·Java 面试篇·第一弹

目录 1、Java 中能创建 volatile 数组吗? 2、volatile 能使得一个非原子操作变成原子操作吗? 3、volatile 修饰符的有过什么实践? 4、volatile 类型变量提供什么保证? 5、10 个线程和 2 个线程的同步代码,哪个更容…...

基于材料生成优化的BP神经网络(分类应用) - 附代码

基于材料生成优化的BP神经网络(分类应用) - 附代码 文章目录 基于材料生成优化的BP神经网络(分类应用) - 附代码1.鸢尾花iris数据介绍2.数据集整理3.材料生成优化BP神经网络3.1 BP神经网络参数设置3.2 材料生成算法应用 4.测试结果…...

tcp/ip协议和opc协议对比详解

TCP/IP协议和OPC协议是两种重要的网络协议,它们在不同的网络层级上运行,并为数据传输和通信提供了不同的功能。 TCP/IP协议(Transmission Control Protocol/Internet Protocol,传输控制协议/互联网协议)是互联网通信的…...

H3C交换机 万兆光模块可以插在千兆光口上使用吗?

环境: S6520X-24ST-SI交换机 H3C LSWM1QSTK2万兆40G堆叠线QSFP 问题描述: H3C交换机 万兆光模块可以插在千兆光口上使用吗? 答案: H3C交换机的万兆光模块(10 Gigabit Ethernet Module)通常使用的是SFP…...

安装.net framework报错“...扩展属性不一致”

Windows操作系统中安装.net framework4.8,双击安装文件直接报错“…扩展属性不一致”,最初以为是操作系统补丁没有装全或者是没有管理员权限造成的,但是打了几个补丁,同时以管理员身份运行安装文件后,依然报同样的错误…...

关系数据库-postgresql-基础

文章目录 介绍linux下安装postgresql源码安装 介绍 Postgresql官网开源的关系型数据库; linux下安装 Ubuntu下可以使用apt包管理器安装;参考地址CentOS下可以使用yum包管理器安装;OpenSuse下可以使用zypper包管理器安装;参考地址…...

39 WEB漏洞-XXEXML之利用检测绕过全解

目录 涉及案例pikachu靶场xml数据传输测试-回显、玩法、协议、引入玩法-读文件玩法-内网探针或攻击内网应用(触发漏洞地址)玩法-RCE引入外部实体dtd无回显-读取文件协议-读文件(绕过)xxe-lab靶场登陆框xml数据传输测试-检测发现CTF-Jarvis-OJ-Web-XXE安全…...

X32位汇编和X64位区别无参函数分析(一)

前言 一、X32汇编函数无参无返回分析 二、X64汇编函数无参无返回分析 总结 前言 提示:以下是个人学习总结:如有错误请大神指出来,只供学习参考,本内容使用使用VS2017开发工具:语言是C,需要一些常见的汇编指…...

数据仓库分层

原因 用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因此数据仓库会存在大量冗余的数据。如果不分层的话,如果源业务系统的业务规则发生变化将会影响整个数据清洗过程,工作量巨大。通过数…...

华为企业AP开启IPV6包转发

现象&#xff1a; 华为企业AP默认关闭IPV6转发&#xff0c;影响是即便是桥接模式下客户端无法与IPV6网关等设备通信。 web页面无任何相关配置项。 解决&#xff1a; ssh或串口登录&#xff0c;wlan视图下执行sta-ipv6-service enable 开启即可。 <HUAWEI> system-vi…...

mysql 指定库对所有表加tenant_id

mysql 指定库里所有表加tenant_id 由于业务所需&#xff0c;区分公司主体&#xff0c;tenant_id油然而生 但库里表至少几百个&#xff0c;不可能一个一个去加&#xff0c;时间成本&#xff0c;人力成本都很大&#xff0c;所以写一个存储过程函数&#xff0c;对其进行一次性操作…...

uniapp 测试 app 到安卓模拟器部署方法以及常见错误解决 无废话

uniapp 测试 app 到安卓模拟器 1.1 安装安卓模拟器 https://www.yeshen.com/ 1.2 查看安装模拟器端口 右击夜神模拟器属性打开文件位置 在打开的文件夹找到 debugReport 双击运行查看运行出来的端口号 一般都是&#xff1a;62001 1.3 HBuilder 配置 选中项目运行运行到手机…...

Qt作业九

1、思维导图 2、作业 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimer> #include <QTime> #include <QTimerEvent> #include <QTextToSpeech>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAME…...

vulkan SDK安装

文章目录 一. vulcan官网二.安装流程 一. vulcan官网 https://vulkan.lunarg.com/sdk/home#windows 二.安装流程 点击下载 双击下载的*.exe进行安装 点击下一步 点击下一步 选择安装位置&#xff0c;点击下一步 点击全选&#xff0c;选择下一步 勾选同意&#xf…...

vscode调试技巧 断言 assert

目录 调试技巧标题debug release介绍调试技巧断点 断点的意思 就是代码执行到断点处停下来&#xff0c;让你去调试。不管前面有多少代码&#xff0c;直接跳到断点处&#xff08;当然前面的已经执行&#xff09;逐过程 不会进入调用函数内部&#xff0c;不管里面怎么执行。 逐语…...

2、Kafka 生产者

3.1 生产者消息发送流程 3.1.1 发送原理 在消息发送的过程中&#xff0c;涉及到了两个线程——main 线程和 Sender 线程。在 main 线程 中创建了一个双端队列 RecordAccumulator。main 线程将消息发送给 RecordAccumulator&#xff0c; Sender 线程不断从 RecordAccumulator 中…...

使用CDN构建读取缓存设计

在构建需要高吞吐量和最小响应时间的系统的API时&#xff0c;缓存几乎是不可避免的。每个在分布式系统上工作的开发人员都曾在某个时候使用过某种缓存机制。在本文中&#xff0c;我们将探讨如何使用CDN构建读取缓存设计&#xff0c;不仅可以优化您的API&#xff0c;还可以降低基…...

windows上下载github上的linux内核项目遇到的问题

问题一&#xff1a;clone的时候报错 Cloning into G:\github\linux... POST git-upload-pack (gzip 27925 to 14032 bytes) remote: Counting objects: 6012062, done. remote: Compressing objects: 100% (1031/1031), done. remote: Total 6012062 (delta 893), reused 342 (…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序

一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...

HubSpot推出与ChatGPT的深度集成引发兴奋与担忧

上周三&#xff0c;HubSpot宣布已构建与ChatGPT的深度集成&#xff0c;这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋&#xff0c;但同时也存在一些关于数据安全的担忧。 许多网络声音声称&#xff0c;这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...

ArcPy扩展模块的使用(3)

管理工程项目 arcpy.mp模块允许用户管理布局、地图、报表、文件夹连接、视图等工程项目。例如&#xff0c;可以更新、修复或替换图层数据源&#xff0c;修改图层的符号系统&#xff0c;甚至自动在线执行共享要托管在组织中的工程项。 以下代码展示了如何更新图层的数据源&…...

MySQL体系架构解析(三):MySQL目录与启动配置全解析

MySQL中的目录和文件 bin目录 在 MySQL 的安装目录下有一个特别重要的 bin 目录&#xff0c;这个目录下存放着许多可执行文件。与其他系统的可执行文件类似&#xff0c;这些可执行文件都是与服务器和客户端程序相关的。 启动MySQL服务器程序 在 UNIX 系统中&#xff0c;用…...

VUE3 ref 和 useTemplateRef

使用ref来绑定和获取 页面 <headerNav ref"headerNavRef"></headerNav><div click"showRef" ref"buttonRef">refbutton</div>使用ref方法const后面的命名需要跟页面的ref值一样 const buttonRef ref(buttonRef) cons…...

GitHub 常见高频问题与解决方案(实用手册)

1.Push 提示权限错误&#xff08;Permission denied&#xff09; 问题&#xff1a; Bash Permission denied (publickey) fatal: Could not read from remote repository. 原因&#xff1a; 没有配置 SSH key 或使用了 HTTPS 而没有权限…...