一、实验准备
实验目的:
首先在Mysql中创建相应的学生成绩表,然后基于 JSP+Mysql 做一个简单的学生成绩查询web系统。下面两个博客作为参考,作者写得很清晰,也有源代码,只需按照说明搭建软件环境和数据库,把代码编译调试通过。
1、学生成绩管理系统3.0(JSP+Servlet+MySQL)
代码: https://github.com/G-lory/StudentAchievementManagementSystem
2、基于JSP实现的学生成绩管理系统
实验工具:
-
JDK15 配置
JDK15 配置,参考博客:JDK15的下载安装+环境变量配置 -
Tomcat9.0 配置
Tomcat9.0 配置,参考博客:Tomcat9.0安装教程 Tomcat9.0环境变量配置教程 -
JDBC 下载
JDBC 官网下载地址:https://dev.mysql.com/downloads/connector/j/
随便哪个都可以
下载完毕后解压缩即可,里面的 .jar 文件后续会在添加JDBC库中用到
-
Navicat 安装
参考网站:Navicat Premium v15.0.21 中文及激活 -
MySQL 安装
参考博客:
windows10上安装mysql(详细步骤)
MySQL的安装与配置——详细教程(我是按照这个教程配置的) -
Eclipse
二、新建数据库
打开Navicat连接mysql
输入密码→测试连接→确定
新建数据库
输入数据库名,然后点击确定
右击刚刚新建的数据库 stusys,点击新建查询。
再里面依次添加下列 SQL 语句,并逐个运行即可。
- 学生表: 学号 密码 姓名
drop table if exists student;
create table student (
sid int(9) primary key auto_increment,
spwd varchar(20),
sname varchar(20)
) AUTO_INCREMENT = 100000000 ;
- 课程表: 课程号 课程名 学分
drop table if exists course;
create table course (
cid int(9) primary key auto_increment,
cname varchar(20),
credit int
) AUTO_INCREMENT = 100000000 ;
- 选课表: 学号 课程号 成绩
drop table if exists optcou;
create table optcou (
sid int(9) not null,
cid int(9) not null,
score decimal(5,2) default -1,
foreign key(sid) references student(sid) on delete cascade on update cascade,
foreign key(cid) references course(cid) on delete cascade on update cascade,
primary key(sid, cid)
);
- 插入数据
insert into student(spwd,sname) values('1','小一'),('2','小二');
insert into course(cname, credit) values('高等数学',5),('大学英语',2),('线性代数',2),('大学计算机基础',1);
insert into optcou(sid,cid,score) values(100000000,100000000,80), (100000000,100000001,75), (100000000,100000002,80), (100000001,100000000,95);
insert into optcou(sid,cid) values(100000000,100000003);
完成后生成了三个表
三、Eclipse配置
打开
Window
→Preferences
如果你的eclipse此处无Server,则跟着步骤一步一步来;若是有,即可跳过Eclipse配置,直接转至项目移植
选择下载地址,这里我选用的是 http://download.eclipse.org/release/2020-12
直接勾选Web,XML,Java EE and OSGi Enterprise Development
下的全部文件,点击next
勾选I accept ···
后点击Finsh
下一步进行安装
开始下载,有亿点慢
快完成下载时会弹出窗口,点击Install anyway
然后勾选上,并点击 Accept selected
点击Restart Now
重启
重启后打开Window
→Preferences
,发现了Server
四、项目移植
项目代码下载
链接:https://pan.baidu.com/s/1RdhU1CC4p80nuaf8IpXXxQ
取码:oy53
点击 File
→Open Projects from File System...
点击 Directory...
选择刚刚下载的项目路径,然后点击 Finish
完成
五、Tomcat环境配置
Window
→Preferences
→Server
→Runtime Environments
→ Add...
Apache
→Apache Tomcat v9.0
→Next
添加 Tomcat 的安装路径,然后点击 Finish
添加完成后就会看到一个 Tomcat 服务器,然后点击 Apply and Close
六、将项目放入Tomcat服务器
Window
→ Show View
→ Other ...
选择Servers
,然后点击Open
下面出现Servers窗口
点击链接,选择Tomcat v9 Server
,然后Next
选中后点击Add
进行添加,添加完成点击Finsh
服务器添加成功
七、添加Tomcat 的库文件
右键点击项目,选择Properties
Java Build Path
→ Libraries
→ Add External JARS ...
打开Tomcat的安装路径,在lib
文件夹里找到servlet-api.jar
并打开
Apply and close
先删除掉 WebContent
,然后将 WebRoot
重命名为 WebContent
在Tomcat的lib
文件夹中找到jsp-api.jar
和 servlet-api.jar
,复制
粘贴到刚刚新命名的 WebContent
\ WEB-INF
\ lib
下
添加成功
①双击 Tomcat V9.0 server at localhost [Stopped, Republish]
②勾选 Use Tomcat iinstallation (takes control of Tomcat installation)
③将 Deploy path 的 wtpwebapps
更改为 webapps
④点击左上角保存按钮
八、添加JDBC库
将 lib
下的 mysql-connector-java-5.1.7-bin.jar
替换成刚刚 JDBC 解压缩后里面的 mysql-connector-java-8.0.22.jar
右键lib
,点击Build Path
→Configure Build Path ...
删除这个作者自带的数据库,版本比较老
点击 Add JARs...
,添加刚刚的.jar库
添加完成,Apply and Close
九、项目运行
打开DBUtil.java
,修改自己的 MySQL 连接文件,即:
com.mysql.jdbc.Driver
→com.mysql.cj.jdbc.Driver
//中间加了个.cj
- URL末尾添加
&serverTimezone=UTC
- 注意
username="数据库用户名"
,password="数据库用户密码"
private static final String driver = "com.mysql.cj.jdbc.Driver";
private static final String url = "jdbc:mysql://localhost:3306/stusys?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";
private static final String username = "root";
private static final String password = "123456";
URL中
localhost:3306
是连接名,stusys
是数据库名
右键, Run As
→Run on Server
成功运行,可以将网址复制到浏览器中打开
管理员登录,账号密码都是 001
演示效果
人生有梦各自精彩^^_
十、参考资料
①程序源码来源:学生成绩管理系统3.0(JSP+Servlet+MySQL)
②学生成绩管理系统【亲测成功】【基于 JSP+Servlet+MySQL8.0 环境搭建详细讲解】
③Tomcat 注册系统服务
④Tomcat异常Serveral ports(8005,8080,8009)required by Tomcat…