JSP基础
一、Tomcat
1.Tomcat简介:
- Tomcat是一个免费的开源JSP容器,是Apache的Jakarta项目中的一个核心项目
- 因免费、稳定而成为目前比较流行的Web应用服务器
- 网址:https://tomcat.apache.org/

2.Tomcat的配置——环境变量
(1)安装JDK1.8
(2)在环境变量中配置JAVA_HOME=JDK的主目录
(3)安装TOMCAT8.x
(4)在环境变量中配置TOMCAT_HOME=TOMCAT的主目录
3.Tomcat的启动与停止
(1)目录:TOMCAT主目录/bin
- 启动:startup.bat
- 停止:shutdown.bat
(2)Tomcat的默认访问地址
- http://localhost:8080/
- 严格区分大小写

二、JSP
1.JSP(Java Server Pages)是一种建立在Servlet规范功能之上的动态网页技术
- 在HTML中嵌入Java脚本语言
- 由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本语言命令
- 将生成的整个页面信息返回给客户端
JSP页面的组成元素:
HTML
JAVA片段
JSP标签
JAVASCRIPT
CSS
2.JSP页面的创建
(1)在Web项目中配置Tomcat Server
(2)在WebContent文件夹下新建hello.jsp文件
(3)编写helloworld程序
(4)运行JSP页面
三、注释
1.JSP注释
不会被翻译,也不会被编译
<%- -…- -%>
2.Java注释
会被翻译,不会被编译
<%//…%>
<%/*…*/%>
<%/**…*/%>
3.HTML注释
会被翻译,也会被编译
<!- -…- ->
可以包含动态内容(java代码),并被JSP容器处理(翻译、编译)
四、指令元素
1.指令元素:提供整个JSP网页相关的信息,并且用来设定JSP页面的相关属性
- 一般形式:<%指令 属性=“属性值”%>
- 指令不会产生任何的输出到当前的输出流中
- 在翻译过程中进行处理
2.page指令
(1)功能:设定整个JSP网页的属性和相关功能。
语法:<%@ page attribute1="value1" sttribute2="value2"%>
例:<%@ page language="java" import="java.util.*,java.io.*" contentType="text/html; charset=gbk" pageEncoding="GBK"%>
(2)常用属性:page指令共有15个属性
language:在jsp2.0中该属性值只能为java
import:导入在脚本环境中引入的java类
- 以逗号分隔表列<%@ page import="java.util.*,java.io.*"%>
- 重复设置:<%@ page import="java.util.*"%> <%@ page import="java.io.*"%>
contentType:指定页面的MIME类型和字符编码
pageEncoding:指定jsp页面的字符编码
errorPage:值为一个错误处理页面(url),当本页面出错,跳转到某url
注:以上两个属性的编码需设置一致,如果均不设置默认为ISO-8859-1
3.taglib指令
(1)功能:使用标签库定义新的自定义标签,在JSP页面中启动定制行为。
(2)语法:<%@ taglib uri="URI" prefix="tagPrefix"%>
五、脚本元素
1.声明
- 说明:用于声明常量、变量、方法等
- 语法:<%!…%>
- 作用范围:当前JSP页面(成员变量,成员方法)
- 可以在一个声明语句中写入多个变量方法,也可以使用多个声明语句
2.脚本段
- 说明:用于处理请求的JAVA代码,可以用于声明、输出、逻辑运算等
- 语法:<%…%>
- 注:声明的变量为局部变量 ,不能定义方法
3.表达式
- 说明:写入JAVA语言中完整的表达式
- 语法:<%=…%>
- 等价形式:<%out.print(…);%>
- 注:表达式后不能写“;”
六、动作元素
1.JSP技术规范定义的一些所有兼容容器都必须实现的标准JSP动作
- 与JSP指令元素不同,JSP动作元素在用户请求处理阶段被JSP引擎处理
2.JSP2.0规范定义了20个标准的动作元素
3.常用动作元素
<jsp:forward>:转发跳转方式
4.制作登录功能

七、HTML表单
1.HTML表单是与用户交互信息的主要手段

2.创建表单
- 一个表单应该包括说明性文字、表单控件、提交和重填按钮等内容
- HTML表单标记说明了表单提交的地点和方式

3.method表示表单发送的方式,分为两种:
get方式:将表单内容经过编码之后,通过URL发送

post方式:将表单的内容通过http发送,post没有字符长度的限制

八、JSP页面组成

相关文章:
JSP基础
一、Tomcat 1.Tomcat简介: Tomcat是一个免费的开源JSP容器,是Apache的Jakarta项目中的一个核心项目因免费、稳定而成为目前比较流行的Web应用服务器网址:https://tomcat.apache.org/ 2.Tomcat的配置——环境变量 (1)…...
基于Springboot +Vue 在线考试管理系统
基于Springboot Vue 在线考试管理系统 前言 随着信息技术的飞速发展,教育领域正经历着深刻的变革。传统的考试模式因其诸多限制和不便,已难以满足现代教育的需求。基于SpringBoot和Vue框架开发的在线考试系统应运而生,它充分利用了现代互联…...
Node.js 函数
Node.js 函数 1. 概述 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许开发者使用 JavaScript 编写服务器端和网络应用程序。在 Node.js 中,函数是一等公民,意味着它们可以作为变量传递,可以作为参数传递给其他函数,也可以从其他函数返回。本文将详细…...
JVM学习指南(9)-JVM运行时数据区
JVM学习指南(9)-JVM运行时数据区 引言 Java虚拟机(JVM)是Java程序运行的核心,它为Java程序提供了一个与平台无关的执行环境。JVM的重要性不仅在于它实现了Java的跨平台特性,还在于它对程序执行过程中内存的管理。JVM运行时数据区是程序执行过程中存储数据的关键区域,理解…...
2025/1/4期末复习 密码学 按老师指点大纲复习
我们都要坚信,道路越是曲折,前途越是光明。 --------------------------------------------------------------------------------------------------------------------------------- 现代密码学 第五版 杨波 第一章 引言 1.1三大主动攻击 1.中断…...
关于嵌入式系统的知识课堂(二)
成长路上不孤单😊😊😊😊😊😊 【14后😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于嵌入式系统的知识课堂(…...
基于ETAS工具的AutoConnect实现方案
文章目录 前言基于ISOLAR工具实现AutoConnect基于脚本实现AutoConnect总结前言 Autosar软件架构设计中,Connect通常来自于Composition之间(Assembly connectors),Component之间(Assembly connectors),Component与Composition之间(Delegation connectors),还有一种Pa…...
BGP基础配置实验
一、实验拓补 二、实验要求及分析 实验要求: 1,R1为AS 100区域;R2、R3、R4为AS 200区域且属于OSPF协议;R5为AS 300区域; 2,每个设备上都有环回,且通过环回可以使设备互通; 实验分…...
基于单片机的人体健康指标采集系统设计
1.系统的功能及方案设计 根据系统设计要求,人体健康指标采集系统的系统结构框图如图2.1所示。系统以单片机作为主控核心,协调控制各个模块进行工作。在传感器检测模块中包括MAX30102心率血氧检测模块、体温检测模块、液晶显示模块。系统以无创的形式实现…...
Go语言性能优化-字符串格式化优化
在 Go 语言中,格式化字符串(例如使用 fmt.Sprintf、fmt.Printf 等函数)确实可能对性能产生影响,尤其是当频繁执行格式化操作时。格式化字符串涉及对格式符的解析和数据类型的转换,这会增加额外的开销。为了减少格式化字符串带来的性能影响,可以采取以下一些优化策略: 1…...
UE5失真材质
渐变材质函数:RadialGradientExponential(指数径向渐变) 函数使用 UV 通道 0 来产生径向渐变,同时允许用户调整半径和中心点偏移。 用于控制渐变所在的位置及其涵盖 0-1 空间的程度。 基于 0-1 的渐变中心位置偏移。 源自中心的径…...
SAP 01-初识AMDP(ABAP-Managed Database Procedure)
1. 什么是AMDP(ABAP-Managed Database Procedure) 1.)AMDP - ABAP管理数据库程序,是一种程序,我们可以使用SQLSCRIPT在AMDP内部编写代码,SQLSCRIPT是一种与SQL脚本相同的数据库语言,这种语言易于理解和编码。 将AM…...
关于视频审核,内容风控在“控”什么?
随着互联网用户每周上网时长的增加,内容偏好逐渐向视频形式转移,视频内容成为了企业竞争的新战场。然而,视频内容审核和风险控制成为了企业面临的重大挑战。那么在视频审核中,内容风控到底在“控”什么呢? 视频内容风…...
5G NTN(七) 高层(1)
说明:本专题主要基于3GPP协议38.821 目录 1. Idle态移动性增强 1.1 TA问题 1.1.1 TA的大小 1.1.2 针对NTN LEO的移动TA,场景C2和D2 1.1.3 针对NTN LEO的固定TA,场景C2和D2 1.1.3.1 方法1:当UE位置信息无法获取的时候 1.1.…...
专家混合(MoE)大语言模型:免费的嵌入模型新宠
专家混合(MoE)大语言模型:免费的嵌入模型新宠 今天,我们深入探讨一种备受瞩目的架构——专家混合(Mixture-of-Experts,MoE)大语言模型,它在嵌入模型领域展现出了独特的魅力。 一、M…...
《柴油遗产-无耻时代》V98375官方版
靠近你所在赛道上的另一名玩家进行攻击或防守,跳到另一条赛道上进行恢复,或闪到对手背后打他个措手不及。与队友合作,充分利用每个角色的独特玩法来控制战斗走向! 《柴油遗产-无耻时代》官方版 https://pan.xunlei.com/s/VODW7xDX…...
科技云报到:洞见2025年科技潮流,技术大融合开启“智算时代”
科技云报到原创。 随着2024年逐渐接近尾声,人们不禁开始展望即将到来的2025年。这一年,被众多科技界人士视为开启新纪元的关键节点。站在新的起点上,我们将亲眼目睹未来科技如何改变我们的世界。从人工智能到量子计算,从基因编辑…...
【openwrt】OpenWrt 路由器的 802.1X 动态 VLAN
参考链接 [OpenWrt Wiki] Wi-Fi /etc/config/wirelesshttps://openwrt.org/docs/guide-user/network/wifi/basic#wpa_enterprise_access_point 介绍 基于802.1X 无线网络身份验证...
[coredump] 生成管理
在 Linux 系统中,core dump 文件的生成路径和文件名可以通过几个方面来控制: 系统默认路径: 默认情况下,core dump 文件通常生成在程序的工作目录,即程序运行时的当前目录。文件名通常为 core,或者在某些系…...
CSS——5. 外部样式
<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>方法3:外部样式</title><link rel"stylesheet" href"a.css" /><link rel"stylesheet" href"b.css"/&g…...
从C API到Connector/C++:一个C++算法工程师的MySQL连接库迁移心路与性能对比
从C API到Connector/C:一个C算法工程师的MySQL连接库迁移心路与性能对比 在算法开发领域,数据是模型的血液。三年前我刚加入金融风控团队时,面对每天TB级的交易数据,MySQL成了最可靠的伙伴。但当我第一次用C API编写数据管道时&am…...
实测对比:xenomai 3.1与VxWorks 7在Cortex-A15平台上的实时性能差异(附Jitter数据)
Xenomai 3.1与VxWorks 7实时性能深度评测:Cortex-A15平台实测数据全解析 在工业控制、航空航天、医疗设备等对实时性要求极高的领域,操作系统的响应确定性往往直接决定系统成败。今天我们将基于双核Cortex-A15硬件平台,通过超过7200万次采样数…...
Spring Integration 2.2.1 和 2.1.5 是 Spring Integration 框架的历史版本
Spring Integration 2.2.1 和 2.1.5 是 Spring Integration 框架的历史版本,分别于 2013 年初发布(2.2.1 发布于 2013 年 2 月,2.1.5 发布于 2012 年 12 月),属于较早期的维护性补丁版本。它们主要包含: Bu…...
如何让导航栏下落动画变慢?——CSS 动画时长精准控制教程.txt
PROFILE 是 MySQL 旧版查询阶段耗时分析功能,因不稳定、不维护、不支持预编译语句及精确等待分类,自 5.7 弃用、8.0 移除;现推荐 Performance Schema 或慢日志 pt-query-digest 替代。PROFILE 是什么,为什么它现在基本没用了MySQ…...
CSS如何解决栅格重叠问题_使用Grid-area明确划分元素占位
grid-area 未生效的主因是父容器未设置 display: grid;必须确保父元素声明 display: grid 或 inline-grid,且 grid-area 值与 grid-template-areas 中命名严格一致(含引号、空格、换行),并用 DevTools 验证 computed 样…...
用Matlab nrWavegen工具箱手把手配置5G SSB:从NCRBSSB到KSSB的频点计算避坑指南
用Matlab nrWavegen工具箱手把手配置5G SSB:从NCRBSSB到KSSB的频点计算避坑指南 当第一次打开Matlab的nrWavegen工具箱,面对SSB配置参数时,很多工程师都会感到一阵迷茫。BlockPattern、NCRBSSB、KSSB这些参数到底该如何设置?为什么…...
2025_NIPS_Sheetpedia: A 300K-Spreadsheet Corpus for Spreadsheet Intelligence and LLM Fine-Tuning
文章主要内容与创新点总结 一、主要内容 数据集构建:提出Sheetpedia,一个包含超29万张独特工作表(源自32.4万+工作簿)的大规模电子表格语料库。数据来源涵盖企业邮件档案(Enron数据集)、网络语料库(Fuse数据集)及Excel论坛爬取内容,经格式标准化、语言过滤(78%+为英…...
零停机迁移:如何将服务器成本从 $1432 降至 $233
零停机迁移:如何将服务器成本从 $1432 降至 $233 在云计算大行其道的今天,"便利性"往往伴随着昂贵的溢价。对于初创公司和个人开发者而言,当业务规模趋于稳定,基础设施成本便成了不可忽视的利润黑洞。本文将详细复盘一次…...
5G/4G流量卡技术原理与合规选购实战(2026最新)
随着移动互联网、物联网、远程办公的普及,流量卡(数据卡、上网卡)成为很多用户的刚需。但市面上产品鱼龙混杂,虚量、限速、封卡、售后失联等问题频发。本文从技术原理、合规标准、选购要点、平台选择四个维度,做一次完…...
单片机c语言入门
本书是一本专为单片机初学者设计的入门教材,内容详实且易于理解。书中通过丰富的实例和时亮困此施丝圆织改通俗易懂的语言,帮助来自读者快速掌握单片机C语言的基础知识。 360百科书中首先介绍了MCS-51单片机的基本概念,随后详细讲解了C51语言…...
