【JSP】第一个JSP程序:Hello,JSP

JSP&EL表达式&MVC&三层结构综合案例 文章目录JSP1,JSP 概述2,JSP 快速入门2.1 搭建环境2.2 导入 JSP 依赖2.3 创建 jsp 页面2.4 编写代码2.5 测试3,JSP 原理4,JSP 脚本4.1 JSP 脚本分类4.2 案例4.2.1 需求4.2.2 实现4.2.3 成品代码4.2.4 测试4.3 JSP 缺点5,EL 表达式5.1 概述5.2 代码演示5.3 域对象6,JSTL标签6.1 概述6.2 if 标签6.3 forEach 标签6.3.1 用法一6.3.2 用法二7 阅读详情
AI摘要

本文深入探讨了JSP和Servlet技术的关系,解释了为何JSP可以视为Servlet的一种实现形式。通过实例展示了JSP的诞生背景、核心特性和实现原理,包括其与Servlet的相似之处及优势。

JSP就是Servlet。如果不会Servlet,就无法理解JSP。通过本文,你将学到如何实现第一个JSP程序,以及JSP程序的实现原理。


JSP全称是Java Server Pages,它和Servlet技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。

JSP诞生背景

虽然servlet技术能够开发出动态效果的网页,但是有一个问题,就是通过servlet开发时很冗杂,例如,下一个如下页面:
在这里插入图片描述

需要在一个Servlet类中写如此多得输出语句,使得编写很繁琐;尤其是当做一个庞大的网站时,更是显得无力。
于是,SUN公司推出了一种JSP技术:在JSP页面写HTML和Java代码。JSP自动完成上图中的转换。提高了程序员的开发效率。

JSP核心特性:

  1. JSP的核心就是servlet!!!
  2. 写JSP就像在写html,但JSP技术允许在页面中嵌套java代码,为用户提供动态数据。
  3. 相比servlet而言,servlet很难对数据进行排版,而JSP除了可以用java代码产生动态数据的同时,也很容易对数据进行排版。

第一个JSP程序

创建一个dynamic web project,在【WebContent】的根目录下利用eclipse的工具模板创建一个jsp文件;

第一个JSP程序

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<font color=red>这是我的第一个JSP页面。</font>
</body>
</html>

执行结果:
在这里插入图片描述

第一行代码解析:

  1. language指定页面中使用哪种作为第二语言;
  2. contentType、charset:告诉浏览器我是什么内容类型,以及使用什么编码
  3. pageEncoding:JSP内容编码;

JSP实现原理

JSP的特点
1)JSP的运行必须交给tomcat服务器!!!!
tomcat的work目录: tomcat服务器存放JSP运行时的临时文件
2)JSP页面既可以写html代码,也可以写java代码。
(html页面不能写java代码 。而JSP页面可以写java代码)

执行过程

问题: 访问http://localhost:8080/day12/hello.JSP 如何显示效果?

  1. 访问到hello.JSP页面,tomcat扫描到JSP文件,在%tomcat%/work把JSP文件翻译成java源文件,并存于 ”Tomcat安装目录/work/Catalina/localhost/项目名/org/apache/JSP” 里;
    (hello.JSP -> hello_JSP.java) (翻译)
  2. tomcat服务器把java源文件编译成class字节码文件 (编译)
    (hello_JSP.java -> hello_JSP.class)
  3. tomcat服务器构造hello_JSP类对象(反射)
  4. tomcat服务器调用hello_JSP类里面方法,返回内容显示到浏览器。
    在这里插入图片描述

为什么JSP就是Servlet

JSP把01.hello.JSP翻译的java文件:
在这里插入图片描述
其中的HttpJSPBase类():
在这里插入图片描述

public abstract class org.apache.jasper.runtime.HttpJSPBase 
				extends javax.servlet.http.HttpServlet 
					implements javax.servlet.JSP.HttpJSPPage {
}

结论:

  1. JSP就是一个servlet程序!!!
  2. servlet的技术可以用在JSP程序中!
  3. JSP的技术并不是全部适用于servlet程序!

生命周期

Servlet的生命周期:
1)构造方法(第1次访问)
2)init方法(第1次访问)
3)service方法
4)destroy方法

JSP的生命周期

  1. 翻译: JSP->java文件
  2. 编译: java文件->class文件(servlet程序)
  3. 走Servlet的生命周期
    1. 构造方法(第1次访问)
    2. init方法(第1次访问):在JSP中叫:_JSPInit()
    3. service方法:_JSPService()
    4. destroy方法:_JSPDestroy()
JSP动态网页设计——tomcat配置、第一个动态工程 默认设置:已完成eclipse安装、JDK安装、环境配置 下载tomcat压缩包(已上传至资源)并解压好。 启动tomcat:在此文件夹下找到bin文件,在bin目录下点击startup.bat 启动标志:双击弹出黑框,若出现以下图片,则已启动 Tomcat服务器启动后,在浏览器的地址栏中输入http://localhost:8080或者http://127.0.0.1:8080(localhost和127.0.0.1都表示本地计算机)访问Tomcat服务器 服务器安装成功标志... 阅读详情

相关推荐

深入解析 RLHF(Reinforcement Learning from Human Feedback)

随着人工智能(AI)技术的快速发展,大规模语言模型(如 OpenAI 的 GPT、Anthropic 的 Claude 等)已经能够生成高质量的文本。RLHF 是一种基于强化学习(Reinforcement Learning, RL)的优化方法,它结合人类反馈(Human Feedback)来训练奖励模型(Reward Model, RM),进而优化语言模型的生成策略。整个强化学习的目标是找到最优策略 π∗\pi^*π∗,使得模型在与环境交互的过程中,最大化累积奖励。RLHF 是一种结合强化学习(RL)

lqq 1771

第一个JSP实战案例之——Hello,JSP

该程序实现的是: 1.创建一个JSP页面,在浏览器正中显示"Hello,JSP" 2.置中 3.字体大 4.字体颜色红色 5.标题:我的第一个JSP页面 <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>我的第一个JSP页面</title&g...

m0_62404144的博客 2403

RK3576平台部署NanoTrack:边缘AI视觉跟踪实战指南

边缘AI部署是将深度学习模型在资源受限的嵌入式设备上高效运行的关键技术,其核心在于模型压缩、硬件适配与软件栈优化。通过INT8量化、算子融合与内存优化等原理,能显著降低模型计算量与内存占用,从而在嵌入式NPU上实现实时推理。这项技术的价值在于为安防监控、无人机视觉、工业检测等场景提供低功耗、高响应的智能感知能力。以瑞芯微RK3576平台部署轻量级视觉跟踪模型NanoTrack为例,其过程涉及模型结构分析、RKNN工具链转换、C++推理程序开发及多线程性能优化,完整展现了从算法到产品的工程化路径,为开发者提供

weixin_31887307的博客 426

什么是JSP以及JSP的运行原理

一、什么是JSP JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。 JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。 JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。 JSP标签有多种功能,比如访问数据库、记录用户选择

qq_57893689的博客 1371

CAN-do-paser:Java开发的CAN总线数据帧解析库

CAN总线数据帧使用DBC文件信息解析为物理量,基于Java开发的数据解析工具。

佳瑞的博客 1133

C# chart以鼠标所在位置为中心进行缩放

以前都用labview做一些软件,但给出去总是会遇到版本,安装包过大等一些问题,于是想自学C#,记录一下使用过程中遇到的一些问题和解决措施,便于日后回顾。 在这个项目中需要绘制折线图,由于数据比较大,需要对图表进行缩放操作,以鼠标为中心对图表进行缩放,在网上查找了一些资料没找到我想要的,于是自己想了一个解决方案,可以基本实现,但略显繁琐,由于刚开始学习C#,对一些操作不太了解,若以后遇...

fei的博客 6363

【JSP学习笔记】1.JSP 教程、简介及开发环境搭建

本章介绍JSP的教程、简介及开发环境搭建。

qq_62052372的博客 1703

解决2020R2,2022R1等版本的SCDM无法编辑草图尺寸的问题

解决2020R2,2022R1等版本的SCDM无法编辑草图尺寸的问题

y_u_yu_yu_的博客 1万+

运行第一个JSP文件

一、创建文件夹 在tomcat文件夹里的webapps文件夹下新建一个名为my的文件夹 二、编写程序 在\webapps\my下新建一个jsp文件,例如命名为one.jsp 内容为 <html> <body> <p>Hello, this is my first jsp page!</p> </body> </html> 三、启动Tomcat服务器 四、在浏览器中输入http://localhost:8080/my/one.j

qq_44502283的博客 494

(超详细)Scala环境搭建(scala-2.12.15、IDEA2021.1.3)

Scala环境搭建(scala-2.12.15、IDEA2021.1.3) JunLeon——go big or go home 目录 Scala环境搭建(scala-2.12.15、IDEA2021.1.3) 一、Scala概述 1、什么是Scala? 2、Scala发展史 3、Scala与Java的关系 二、Scala环境搭建 1、环境准备 2、Scala安装与配置环境变量 3、验证Scala 三、编写第一个Scala程序 1、使用IDEA创建maven工程 2、.

JunLeon的博客 3万+

使用curl命令出现fatal: unable to access ‘https://github.com/nvm-sh/nvm.git/‘: Encountered end of file的解决方案

本文主要介绍了使用curl命令出现fatal: unable to access ‘https://github.com/nvm-sh/nvm.git/’: Encountered end of file的解决方案,希望能对使用curl命令的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

用JSP输出Hello World

------------------siwuxie095 在 Eclipse 的 Package Explorer,右键->New->Other->Web->Dynamic Web Project Tomcat 使用默认安装的 Apache Tomcat v9.0 关于 Tomcat 的安...

weixin_30699955的博客 3319

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

我的第一个JSP程序

[TOPT] 准备工作 windows安装 Notepad++编辑器 tomcat6.0 JDK6 具体步骤: 配置环境变量 安装JDK6,安装在默认位置(C:\Program Files (x86)\Java**)或者自定义。 打开计算机的系统属性->高级系统设置,如图1所示。 全新的界面设计 ,将会带来全新的写作体验; 在创作中心设置你喜爱的代码高亮样式,Markdown...

mahzhen90的博客 340

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

用 JSP 向浏览器输出 hello world

01-用 JSP 向浏览器输出 hello world 1.Eclipse部分 1).新建一个动态web项目 2).项目名称为JSPStudy,然后next 3).继续next 3).finsh 4).然后选择WebContent,新建一个文件夹01 5).新建一个JSP文件,命名为hello 2.代码部分 1).在body中插入代码 <%! String str = "hello world";//定义的是全局变量 %> <% //String str = "hello

qq_43478701的博客 6462

我的第一个JSP(Hello World)程序

我的第一个JSP(Hello World)程序 http://www.cnblogs.com/cjsh/articles/36271.aspx 转载于:https://www.cnblogs.com/cjsh/archive/2004/08/25/36443.html

weixin_30487201的博客 158

利用Eclipse完成第一个.JSP文件

文章目录

qq_41938545的博客 423

Hello JSP!——基础语法篇

一、JSP简介 JSP是Java Server Pages的缩写,是由Sun公司于1999年6月推出的技术,通过在传统的HTML中插入JSP脚本代码从而构成JSP页面。JSP是基于Java Servlet及整个Java体系的Web开发技术,可以利用这一技术来构建安全的、跨平台的动态Web站点。JSP目前在不断的进行更新和优化。 JSP具有如下主要特点: 1.程序逻辑和显示分离 使用JSP技

想去海邊 5695

第一个Jsp程序,Hello World

1、安装Tomcat服务器,具体参考这里2、打开Tomcat安装目录,打开webapps目录,在里面新建一个项目文件夹,比如myHome,然后在myHome里新建一个index.jsp和WEB-INF文件夹3、在index.jsp添加如下代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8">

6377

第一个JSP网页,输出hello world

%%>就是嵌套着java的代码,如果不使用<%%>就会报错,需要导入jsp的api(如果不导入jsp.api就会报错),类似于servlet的启动<%%>外的是属于h5代码。编写输出第一个Jsp页面,过于简单,由于jsp是属于Java Server Pages,仍然是需要用到Tomcat。

weixin_73603602的博客 1625

第一课--jsp文件创建与运行--hello world

这学期开始学习JSP&Servlet,昨天上了第一节课,教我们在myeclipse中创建jsp文件以及运行第一个jsp文件--helloworld.jsp,以下为学习总结,经供参考: 首先打开MyEclipse 2019 首先new一个web project,创建好名字,例如:helloworld 在设置好工程名字后记得点击next,到以下界面: 如果想在创建好的工程中找到we...

Jzandth的博客 5253

第一个jsp文档,hello world

当被错误505、404折磨N遍之后,页面:localhost:8080/工程名/test.jsp  终于能正常显示出来了…… 在这里记录一下建立工程的过程。 1)新建一个 Dynamic Web Project 工程 File --> New --> Dynamic Web Project,如下: Project name 命名为 Tomcat Test2;在 Target run

u014691453的专栏 1万+

jsp介绍

概念JSP(Java Server Pages),它是基于Servlet的扩展技术。其作用是简化JavaWeb应用中动态页 面的开发。 使用JSP技术替换原有的Servlet版View,可以更方便的编辑出更好看的网页。 Servlet实现的View在进行动态页面开发时存在的问题: 1. 开发繁琐,必须实现Servlet接口,重写service方法。 2. 一旦修改,必须要重新编译、部署、测试。 3. 不利于修改页面的样式,不利于编辑内容丰富的页面。 4. 不利于前后端的协作。 1 第一个JSP程序的开发[

weixin_40055163的博客 5695

Servlet+JSP(三):第一个Web程序

Servlet+JSP(三):第一个Web程序 在学习了服务器并成功安装后,我们知道当浏览器发送请求给服务器后,服务器会调用并执行对应的逻辑代码进行请求处理。逻辑代 码是由程序员自己编写然后放进服务器进行运行,其实就是Servlet程序。 第一个Web程序: 开发工具: Myeclipse Myeclipse安装: 双击执行安装软件,然后一路next(位数根据电脑的操作系统位数自行 选择)...

樊凯的博客 667
上一篇: 【Java面向对象】反射机制的入门
下一篇: 【Java多线程】多线程同步——对“ReentrantLock”类的简单理解
ALGO阿狗
博客等级 码龄9年 64粉丝 149原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值