使用JSP构建JavaWeb项目--以数据库大作业为例

本文最后更新于:4 个月前

人生就像一杯茶,初尝或许苦涩,但细细品味,便能感受到其中的甘甜与清香。

前言

  • 最近老师布置了数据库实验大作业,要求将数据库表的数据与前台绑定,展示数据在前台浏览器上,并实现对数据的增删改
  • 我计划用 JSP 技术,来实现这个功能,顺便巩固 JavaWeb 基础和复习相关知识
  • 目标:建立一张数据库表 Student,实现在前台页面对该表的增删改查

正文

项目实战

2024 年 6 月 1 日

最近帮同学使用 jsp 实现简单的用户登录功能,借此巩固复习下这方面的知识。

学习

JSP 运行原理_jsp 网页运行原理-CSDN 博客

JSP 技术原理_jsp 运行原理-CSDN 博客

JSP 运行原理_简述 jsp 的基本运行原理-CSDN 博客

1
JSP全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术。在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页 中静态内容的显示,Java代码用来实现网页中动态内容的显示。为了与传统HTML有所区别,JSP文件的扩展名为 .jsp

Servlet 是什么?怎么使用?_什么是 servlet-CSDN 博客

Servlet 简单介绍_servlet 是什么-CSDN 博客

1
2
3
4
5
6
7
Web Client 向 Servlet 容器( Tomcat )发出 Http 请求Servlet 容器接收 Web Client 的请求
Servlet 容器创建一个 HttpServletRequest 对象,将 Web Client 请求的信息封装到这个对象中
Servlet 容器创建一个 HttpServletResponse 对象
Servlet 容器调 HttpServlet 对象 service 方法,把 Request 与 Response 作为参数,传给 HttpServlet
HttpServlet 调用 HttpServletRequest 对象的有关方法,获取 Http 请求信息
HttpServlet 调用 HttpServletResponse 对象的有关方法,生成响应数据
Servlet 容器把 HttpServlet 的响应结果传给 Web Client

【JavaEE 基础学习打卡 08】JSP 之初次认识 say hello!_jsp 执行流程-CSDN 博客

Servlet 是什么?怎么使用?_什么是 servlet-CSDN 博客

仓库地址

🍚 JavaWebClassTest: 学习 JavaWeb 的练手项目 (gitee.com)

代码

1
2
3
4
5
6
7
8
9
10
11
12
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LogoutServlet</servlet-name>
<url-pattern>/jsp/logout.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>UserServlet</servlet-name>
<url-pattern>/jsp/user.do</url-pattern>
</servlet-mapping>

image-20240604120314577

准备工作

  • 下载和配置 Maven 管理工具
  • 配置 Tomcat 服务器,构建 Web 项目
  • 导坐标,引入项目开发所需依赖
  • 创建数据库和表结构

编码开发

效果演示

  • 使用 JSP 技术,成功实现了在前台页面对数据库表 Student 的增、删、改、查
  • 表结构及数据展示效果如下:

image-20230630160142197

  • 新增学生记录,效果演示如下:

image-20230630160203158

image-20230630160219353

image-20230630160229118

  • 修改学生记录,效果演示如下

image-20230630161705084

image-20230630161833394

image-20230630161930431

image-20230630162022236

  • 删除学生记录,效果如下:

image-20230630160328728

image-20230630160338852

踩坑记录

  • 遇到两个问题:(2023/10/03 早)
  • 引进 servlet 包,maven 报错,是因为 D:\softWare\Maven\apache-maven-3.6.1\conf\settings.xml 下的 jdk 配置过期了,引进新技术就报错了,添加以下插件配置即可
1
2
3
4
5
6
7
8
9
10
11
12
<profile>
<id>jdk-1.7</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.7</jdk>
</activation>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
</properties>
</profile>
  • 一写 jsp 项目就跑不起来,直接显示:
  • 发现报错:
1
ZipException opening "jsp-api-2.2.jar": zip END header not found
  • maven 下没有 2.2 版本的 jsp 包,pom.xml 配置下换成 2.1 就行了
  • 数据库实验大作业设计完成!巩固学习了 servlet、request、response、jsp、Mybatis 等知识,收获颇深,我要把这个项目推送到 Gitee/GitHub 上

总结


使用JSP构建JavaWeb项目--以数据库大作业为例
https://test.atomgit.net/blog/2023/06/24/使用 JSP 构建 JavaWeb 项目-以数据库大作业为例/
作者
Memory
发布于
2023年6月24日
更新于
2024年6月3日
许可协议