JavaWeb学习心得总结

article/2025/11/7 15:51:47

JavaWeb(JSP+Servlet)新手学习心得总结

说明:

由于篇幅的原因,本文只是对于JavaWeb项目的大致数据流程做一个介绍,同时引出一些JavaWeb开发中很基础的知识点,且不会精确到具体代码实现。

所以本文的适合读者为刚刚接触JavaWeb开发的人,或者是想了解一下网页服务的大致流程的新手。

当然如果你关心具体实现,可以跟学https://www.bilibili.com/video/BV1BJ411L7NR,该教程从针对JavaWeb入门者的角度进行教学,非常适合新手

同时如果你关心整体项目构建。可以查看https://gitee.com/YangTang-Gitee/library ,学习搭建一个简单的JavaWeb项目。

推荐结合目录食用。

预备知识:

1:Java 基础知识

2:HTML、CSS、JavaScript等前端基础知识

主要开发工具:

IntelliJ IDEA:非常流行的Java开发IDE,因为其足够智能且可扩展性很强,目前市场占用率已经位居Java开发IDE榜首,且学生党可以免费使用完整版,非常适合我等穷孩子。建议新手可以跟https://www.bilibili.com/video/BV1PW411X75p系统学习一下IDEA的使用。

一:JavaWeb服务容器

JavaWeb服务需要特定的容器来管理动态和静态资源。

在这里插入图片描述

作为初学者,且只针对简单的JavaWeb项目,Tomcat是一个不错的Web 应用服务器。Tomcat最核心的功能是对于JSP与Servlet的管理。

在这里插入图片描述

二:Servlet技术

Servlet本质为Java接口或类,开发者通过实现或继承Servlet接口或类形成自己的一个Servet子类,并在方法中写上自己的业务,写上给客户端的返回等(比如MyFirstServlet):

在这里插入图片描述

同时配置该类的在当前Web服务中的访问地址。在这里插入图片描述

这样浏览器就可以根据 Tomcat地址+当前Servlet的地址访问到当前Servlet,并执行相关业务。

在这里插入图片描述

三:JSP

从语言的角度来讲,可以将JSP理解为包含 Java语言+前端3大语言的一个文件。

从实现的本质上来讲,JSP是需要传输给客户端很多前端语句的 Servlet。

JSP中含有大量的前端标记语言等,这些将用来给用户一个完整的界面 。 同时还有少量的Java语言,主要是为了能够结合实际业务,为页面提供真实的数据

在Tomcat中,JSP被访问时会自动被装载成一个Servlet。其中的Java语言部分很自然就成了Servlet中的一部分,运行、得到数据等,而其中的前端语言部分会在结合Java部分运行结果后被Servlet写给客户端形成界面。所以JSP本质为返回给客户端一整个完整界面的Servlet。

所以,既生Servlet,何生JSP

因为JSP的文件格式符合前端编程的习惯,你只需要在传统的前端页面加入少量Java语言就行,如下图所示 。

在这里插入图片描述

当被装载成Servlet时是这个样子的:

在这里插入图片描述

所以如果开发者要直接在Servlet中去输出一整合网页显然是不人性的,同样如果在JSP中去掺杂大量的业务代码也是不利于开发的。

于是在此基础上就形成了Servlet主内,JSP主外的格局。即Servlet主要负责接收请求、处理业务等,然后将数据等传递给某个JSP,JSP负责描述界面、展示数据等。大致可以形成以下流程图:

在这里插入图片描述

EL表达式与JSTL标签:

从本质上来讲这两者是一样的,都是JSP中为了简化Java语言部分的编写而生的,但是两者的侧重点不一样。

EL的主要功能是简化JSP开发中对对象的引用,更侧重于数据交互

JSTL的主要功能对Java中常用语句的封装,比如你可以用类似HTML那样标签来做一个for循环,而不用像Java代码中那样手写循环。

总而言之,没有这两个东西你也可以写,但是有这两个开发会简单很多,代码也会简洁不少,值得一学。

四:MVC模式

MVC模式并不是新的技术,而是新的思想

M代表Model,指一个确实的实体类,比如一本书,一个用户等

V代表View,指返回给用户看的视图(JSP)

C代表Controller,指处理具体业务的代码(Servlet)

Controller负责接收请求、处理业务,然后将处理的数据打包成Model,再将Model整个传给JSP,JSP则将Model中的数据读取并显示。

这样做可以降低数据与程序的耦合性,无论从开发还是维护,都会减少很多工作量。同时也可以使代码逻辑更清晰,可读性更强等。

在这里插入图片描述

五:数据库连接

数据库连接池

JDBC的基础知识这里就不在复述,这里我们主要需要了解一个数据库连接池的概念。

在基础的获取数据库连接对象时,我们每次获取都需要向数据库申请获取连接,验证⽤户名和密码等,执⾏完 SQL 语句后断开连接,这样的⽅式会造成资源的浪费,数据连接资源没有得到很好的重复利⽤。

而数据库连接池的概念是,我先申请一批连接对象放到连接池中,当程序需要调用时则提供给它一个连接,而不用重新申请。用完后程序再把该连接还给连接池,而不是直接断开连接,可供其他请求使用。

在这里插入图片描述

DBUtils

DBUtils 可以帮助开发者完成数据的封装结果集到 Java 对象的映射)。

因为在基础的JDBC查询中,返回结果通常为ResultSet。一方面根据上述MVC中M模式,我们需要自己手动去将数据封装成对象,另一方面我们将不可避免的手写循环去遍历结果集,使得开发很低效。

六:过滤器

顾名思义,过滤器主要是对请求进行过滤的,保证特定的资源只能被特定的人、特定的情况访问。一方面可以维护安全,另一方面也可以提供不同服务。

在这里插入图片描述

七:JavaWeb数据流程

根据以上概念我们就可以总结出一个JavaWeb,或者说大部分Web项目的大致数据流程图。

在这里插入图片描述

上图的大部分概念都已经介绍过,接下来对MVC之C中的几个新概念再说明一下。

因为后台的代码是很复杂的,你每发送一个请求给一个Servlet,就要求他在当前Java文件即接受和返回信息,又处理具体业务,又要和数据库通信。实现上是完全可以的,但是这会使得代码耦合性很高,非常不适合大型项目开发,也不利于调试。

故我们可以用controller来接收请求,然后在controller中注入一个service的对象,使用service对象的方法来实现具体业务。 同样,如果当前业务时需要使用到数据库的,可以在service中注入一个repository对象,然后再调用他的方法来实现数据库操作。

最终的后端的Java文件代码包大致如下,至于前端的包会有一个专门的文件夹用来放JSP等前端资源。

在这里插入图片描述

八:JavaWeb常用功能

上述的东西就大致包含了JavaWeb基本流程,下文的东西都是些现实应用中经常会用到的功能模块罢了。

1:Ajax技术:

Ajax = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。其实核心思想很简单,在不用刷新整个网页的情况下刷新局部网页数据。

比如你在B站看一个投票计数,投票数是时时刻刻都在变化的,而你不用刷新整个页面就能看到最新的投票数据。这就是自动局部刷新,我只向后端要局部的数据,既可以避免整个页面的不断刷新,也可以避免重复请求固定的数据,导致效率降低。

2:文件上传与下载

这个没什么新鲜的,但是却是必需功能。

3:监听器

主要是对整个Java项目的运行状况等进行监听,增强Web应用的事件处理能力。

九:结语

如开头提到的,本文档只是个人在JavaWeb学习路上一个心得和理解的总结与分享,所以通篇没有提到过具体实现,希望能够给同作为新手的孩子画一个模样

当然也希望大佬们看到后能在评论区批评一下孩子不对的地方。

Respect!


http://chatgpt.dhexx.cn/article/hqkW1Qs4.shtml

相关文章

JavaWeb学习笔记总结(一)

前言:因为我是大三,这学期开课是JavaWeb,前端三剑客htmlcssjs,还有一个springboot框架的课,大二下学期才学的java跟sql,所以跨度直接到springboot有点大吧,ssm框架都没学,但是b站上有挺多教程的&#xff0c…

一.JavaWeb学习路线

Java系统学习路线: 第一阶段 第一阶段: Java 基础,包括 Java 语法,面向对象特征,常见API,集合框架。(基础) 第二阶段:Java API:输入输出,多线程,网络编程,反…

java web学习_JavaWeb学习路线

Java web,是用Java技术来解决相关web互联网领域的技术综合。Web包括:web服务器和web客户端。Java在客户端的应用有Java applet,不过使用很少。Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。java技…

JavaWeb学习笔记

JavaWeb 1.ASP、PHP、JSP ASP: 微软&#xff1a;最早流行的就行ASP 在HTML嵌入VB的脚本 在ASP中&#xff0c;基本一个界面就有几千行代码&#xff0c;页面极其混乱&#xff0c;维护成本高 c#编程语言 IIS服务器 <h1> <% system.out.println("hello") …

javaweb学习路线

一、学习顺序 1、java语法&#xff0c;语法很重要&#xff0c;没有这个根本后面的也进行不下去&#xff0c;建议先学会应用了再去研究jdk源码&#xff0c;本身就是新手就想从原理开始了解&#xff0c;估计非常吃力&#xff0c;效果也不一定好。 2、数据库&#xff0c;首先学关…

JavaWeb知识点汇总

JavaWeb知识点汇总 前言&#xff1a;跟了狂神javaweb学习有一阵子了&#xff0c;这里简单进行笔记总结&#xff0c;也是第一次使用markdown写这么长的文章&#xff0c;虽然是跟着敲的&#xff0c;也是多理解了一遍&#xff0c;以及具体上手自己写的代码和相应效果图。发布于此…

JAVAweb入门基础

1、JAVAweb开发原理 2、web服务器 2.1、技术服务 ASP&#xff08;微软 国内最早流行;在HTML中嵌入了VB的脚本&#xff0c;ASPCom;在ASp开发中&#xff0c;基本一个页面都有几千行的业务代码&#xff0c;页面及其混乱&#xff1b;维护成本高&#xff01;&#xff09; PHP(PHP…

JavaWeb学习知识总结

1.自定义 servlet 的三种方式&#xff0c;及区别? 方式一&#xff1a;编写一个类去实现Servlet接口(必须重写Servlet接口里面所有的抽象方法)方式二&#xff1a;编写一个类去继承GenericServlet抽象类(重写生命周期的service方法&#xff08;抽象法&#xff09;)GenericServle…

JavaWeb学习路线(总结自尚硅谷雷神SSM|极其详细|思路清晰|适合入门/总复习)

文章目录 JavaWeb前言说明前端技术html&#xff08;掌握&#xff09;1.标签 css&#xff08;了解&#xff09;1.简介2.常用样式定义 JavaScript&#xff08;掌握&#xff09;1.简介2.基本语法2.1声明变量2.2声明对象2.3声明方法 3.事件 JQuery&#xff08;精通&#xff09;1.简…

https证书安装部署 https证书怎么安装

http和https是我们上网的时候经常见到的网络协议&#xff0c;当我们进入一个网站的时候&#xff0c;网站的域名有时候是http开头的&#xff0c;有时候又是https开头的&#xff0c;可能你们会好奇&#xff0c;这两者究竟有什么区别呢&#xff1f;https证书又是什么呢&#xff1f…

申请SSL证书,并给域名配置SSL证书,并部署服务器;SSL证书的下载和安装

注&#xff1a;本文相关操作皆由黄色荧光笔标注 申请SSL 我这里以阿里云服务器为例&#xff0c;SSL证书是从阿里云申请的一年免费的证书&#xff0c;付费的也可以参考。 先是登录阿里云控制台&#xff0c;进入&#xff1a;SSL证书&#xff08;数字证书管理服务&#xff09;。…

SSL证书安装部署

微信小程序时刻监控产品的信息&#xff0c;夜里突然没了数据。阿里云服务器故障&#xff1f; 登录云管理&#xff0c;查看一切正常&#xff0c;e-mail有一封邮件显示ssl证书到期&#xff0c;需重新部署。 申请证书 创建证书 在Apache服务器上安装SSL证书 - 数字证书管理服务 -…

如何给网站安装SSL证书?

视频教程&#xff1a;ssl证书安装视频教程&#xff08;b站&#xff09;https://www.bilibili.com/video/BV1P3411h7je 每个站长都有必要为网站安装SSL证书。 首先&#xff0c;我们需要获得一个SSL证书&#xff0c;也称为HTTPS证书。 筛选SSL证书类别需要的思考不亚于流行的垃…

Https证书怎么安装

第一步&#xff1a;首先我们去阿里云申请证书&#xff0c;证书审核完成下载进行部署。至于部署什么类型的&#xff0c;需要跟服务器商确认。 第二步&#xff1a;去服务器端找到SSL部署的配置。 下载申请下来的密钥。填入对应的账户&#xff0c; 完成&#xff01;提示已部署

ssl证书下载与安装 – 如何下载ssl证书

证书是审核完毕后您将会收到&#xff1a; 1. 服务器证书 2. 服务器中级 CA 证书 1、 配置 Apache 打开 apache 安装目录下 /etc/httpd/conf/httpd.conf 文件&#xff0c;找到 #LoadModule ssl_module modules/mod_ssl.so 删除行首的配置语句注释符号“ #” 保存退出。 …

华为云ssl证书申请和安装

华为云ssl证书申请和安装 1.打开网站&#xff0c;点击领取免费证书&#xff0c;点击立即购买。 2.打开华为云控制台&#xff0c;找到云证书管理服务。确认付款后自动跳转&#xff0c;点击申请证书。 填写自己的域名。 填写授权人信息&#xff0c;姓名、电话、邮箱。 3.验证域名…

charles SSL证书安装

charles抓取https协议报文需要配置SSL通用证书&#xff0c;否则会导致乱码&#xff0c;本文介绍Charles 的 CA 证书安装方法。 1. 电脑安装SSL证书 选择 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate” 2. 浏览器安装SwitchyOmega插件 插件下…

怎么在服务器上安装SSL证书?服务器证书安装配置指南

现如今&#xff0c;网上安全传输协议HTTPS应用是越来越广泛了&#xff0c;再加上使用SSL证书的站点也越来越多。很多网站在应用SSL证书的时候&#xff0c;通常是不知道怎么给服务器安装SSL证书的&#xff0c;下面就让摩杜云来跟大家讲解一下怎么在服务器上安装SSL证书。 给服务…

如何安装ssl证书?

今日蔚可云网编先协助大伙儿解读一下完全免费ssl证书安装和如何安装证书&#xff0c;期望根据网编的解读能协助到应用电子计算机的情况下碰到这种难题的小伙伴们。 一、完全免费ssl证书安装 网编先带大家一起来解析一下完全免费ssl证书安装&#xff0c;最先应当进到官方申请机…

windows ------ 证书导入(安装)

https://blog.51cto.com/u_15127513/3862855 1、选中证书&#xff0c;右击点击安装证书 2、点击下一步 3、选择受信任的根证书颁发机构 点击下一步 4、点击完成 提示安全警告点击是&#xff0c;因为是自己知道的证书 ​​​​​​​