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 阅读详情

JSP概述

什么是JSP

JSP(Java Server Pages)是JavaWeb服务器端的动态资源。它与html页面的作用是相同的,显示数据和获取数据。

JSP的组成

  JSP = html + Java脚本(代码片段) + JSP动态标签

 

JSP语法

JSP脚本

JSP脚本就是Java代码片段,它分为三种:

l  <%...%>:Java语句;

l  <%=…%>:Java表达式;

l  <%!...%>:Java定义类成员;

 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>JSP演示</title>

  </head>

  <body>

    <h1>JSP演示</h1>

    <%

    // Java语句

    String s1 = "hello jsp";

    // 不会输出到客户端,而是在服务器端的控制台打印

    System.out.println(s1);

    %>

  <!-- 输出到客户端浏览器上 -->

    输出变量:<%=s1 %><br/>

    输出int类型常量:<%=100 %><br/>

    输出String类型常量:<%="你好" %><br/>

    <br/>

    使用表达式输出常量是很傻的一件事,因为可以直接使用html即可,下面是输出上面的常量:<br/>

    100<br/>

    你好   

  </body>

</html>

 

内置对象out

out对象在JSP页面中无需创建就可以使用,它的作用是用来向客户端输出。

  <body>

    <h1>out.jsp</h1>

    <%

       //向客户端输出

       out.print("你好!");

    %>

  </body>

 

其中<%=…%>与out.print()功能是相同的!它们都是向客户端输出,例如:

<%=s1%>等同于<% out.print(s1); %>

<%=”hello”%>等同于<% out.print(“hello”); %>,也等同于直接在页面中写hello一样。

多个<%...%>可以通用

在一个JSP中多个<%...%>是相通的。例如:

  <body>

    <h1>out.jsp</h1>

    <%

       String s = "hello";

    %>

    <%

       out.print(s);

    %>

  </body>

循环打印表格:

  <body>

    <h1>表格</h1>

    <table border="1" width="50%">

       <tr>

           <th>序号</th>

           <th>用户名</th>

           <th>密码</th>

       </tr>

    <%

       for(int i = 0; i < 10; i++) {  

    %>

       <tr>

           <td><%=i+1 %></td>

           <td>user<%=i %></td>

           <td><%=100 + 1 %></td>

       </tr>

    <%

       }

    %>

    </table>

  </body>

 

JSP的原理

 

JSP是特殊的Servlet

  JSP是一种特殊的Servlet,当JSP页面首次被访问时,容器(Tomcat)会先把JSP编译成Servlet,然后再去执行Servlet。所以JSP其实就是一个Servlet!

 

JSP真身存放目录

JSP生成的Servlet存放在${CATALANA}/work目录下,我经常开玩笑的说,它是JSP的“真身”。我们打开看看其中的内容,了解一下JSP的“真身”。

你会发现,在JSP中的静态信息(例如<html>等)在“真身”中都是使用out.write()完成打印!这些静态信息都是作为字符串输出给了客户端。

JSP的整篇内容都会放到名为_jspService的方法中!你可能会说<@page>不在“真身”中,<%@page>再讲说。

 

a_jsp.java的_jspService()方法:

  public void _jspService(final javax.servlet.http.HttpServletRequest request,

final javax.servlet.http.HttpServletResponse response)

        throws java.io.IOException, javax.servlet.ServletException {

 

    final javax.servlet.jsp.PageContext pageContext;

    javax.servlet.http.HttpSession session = null;

    final javax.servlet.ServletContext application;

    final javax.servlet.ServletConfig config;

    javax.servlet.jsp.JspWriter out = null;

    final java.lang.Object page = this;

    javax.servlet.jsp.JspWriter _jspx_out = null;

    javax.servlet.jsp.PageContext _jspx_page_context = null;

    try {

      response.setContentType("text/html;charset=UTF-8");

      pageContext = _jspxFactory.getPageContext(this, request, response,

                             null, true, 8192, true);

      _jspx_page_context = pageContext;

      application = pageContext.getServletContext();

      config = pageContext.getServletConfig();

      session = pageContext.getSession();

      out = pageContext.getOut();

      _jspx_out = out;

…

}

 

再论JSP脚本

JSP脚本一共三种形式:

l  <%...%>:内容会直接放到“真身”中;

l  <%=…%>:内容会放到out.print()中,作为out.print()的参数;

l  <%!…%>:内容会放到_jspService()方法之外,被类直接包含;

 

前面已经讲解了<%...%>和<%=…%>,但还没有讲解<%!...%>的作用!

现在我们已经知道了,JSP其实就是一个类,一个Servlet类。<%!...%>的作用是在类中添加方法或成员的,所以<%!...%>中的内容不会出现在_jspService()中。

  <%!

       private String name;

       public String hello() {

           return "hello JSP!";

       }

    %>

 

JSP注释

我们现在已经知道JSP是需要先编译成.java,再编译成.class的。其中<%-- ... --%>中的内容在JSP编译成.java时会被忽略的,即JSP注释。

也可以在JSP页面中使用html注释:<!-- … -->,但这个注释在JSP编译成的.java中是存在的,它不会被忽略,而且会被发送到客户端浏览器。但是在浏览器显示服务器发送过来的html时,因为<!-- … -->是html的注释,所以浏览器是不会显示它的。

 

JSP基础教程 1、JSP简介 JSP(全称JavaServer Pages),sun公司主导的一种动态网页技术,JSP在服务端运行,可以响应客户端的请求,根据请求内容动态的生成HTML、XML或其他格式文档的Web网页然后返回请求者。在JSP页面可以嵌入Java代码,JSP文件在运行时会被其编译器转换成更原始的Servlet代码,然后再由Java编译器来编译成能快速执行的二进制机器码。 2、JSP的一些特点 ①能以模板化的方式简单、高效地添加动态网页内容。 ②可利用JavaBean和标签库技术复用常用的功能代码。 ③有良 阅读详情

相关推荐

模型剪枝实战 | Torch-Pruning 库在YOLOv8上的应用指南

本文详细介绍了如何使用Torch-Pruning库对YOLOv8模型进行结构化剪枝,以实现模型“瘦身”。通过DepGraph(依赖图)技术自动处理层间依赖,确保剪枝安全。文章提供了从环境搭建、核心原理理解到完整剪枝流程的实战指南,并强调了剪枝后的微调与性能评估,帮助开发者在保持精度的同时显著提升模型推理速度。

weixin_29046035的博客 503

什么是jsp?

目录 一、JSP的介绍 二、JSP的本质 三、JSP的常用脚本 1.声明脚本 2.表达式脚本 3. 代码脚本 4、JSP九大内置对象 5、jsp四大域对象 一、JSP的介绍 JSP的全称是Java Server Pages,即Java的服务器页面 JSP的主要作用是代替Servlet程序回传HTML页面的数据 二、JSP的本质 JSP页面本质上是一个Servlet程序,第一次访问JSP页面时(运行Tomcat服务器后在浏览器地址栏输入路径),Tomcat服务...

weixin_48112109的博客 4万+

CUBEMX ADC 单/多通道+DMA

本文使用的是STM3F103C8T6 Cubemx进行单/多通道DMA配置。

记录学习 1403

JavaWeb技术之JSP

目录 1. 什么是JSP 2. JSP为什么会出现 3.JSP中如何嵌套java代码 示例 jsp中的注释 4. JSP的原理 5. JSP的内置对象 1、request对象 2、response对象 3、session对象 4、application对象 5、out 对象 6、pageContext 对象 7、confifig 对象 8、page 对象 9、exception 对象 6. JSP的指令 (1)Page指令 (2) Include指令 (3)Tagli

qq_36279562的博客 7591

《Kubernetes部署篇:基于x86_64+aarch64架构CPU+containerd一键离线部署容器版K8S1.33.3高可用集群》

《Kubernetes部署篇:基于x86_64+aarch64架构CPU+containerd一键离线部署容器版K8S1.33.3高可用集群》

东城绝神 1368

MicroCap声学仿真介绍(四)-扬声器仿真

将“障板”模块放置到工作区,“Param:AREAm2=”是指的是障板孔的面积,一般可以输入喇叭的面积Sb;“Param:DISTm=”指的是测试麦克风与障板的距离,这里我们可以填入1米,小喇叭可以填入0.1m;此时工作区的电阻是竖直的,为了方便,我们需要将其变成水平的。其中,频率范围为20~20KHz,仿真点数为500个点,先仿真频响曲线和相位曲线,点击左上角的run,界面如下。鼠标单击工作区,弹出如下界面:在弹出的界面中输入“.define Re 3.82 “,点击”确定“按钮。

山无忧的博客 2997

JSP介绍

目录 一、JSP入门 二、JSP 运行原理 1、JSP 技术特点 2、JSP 与 Servlet 区别 三、JSP 的使用 1、JSP 的三种原始标签 2、JSP 原始标签的使用 3、JSP 的指令标签 4、JSP 三大指令 四、JSP 的内置对象 request常用的方法: response常用的方法 session session常用方法 五、JSP四大作用域对象 一、JSP入门 1、JSP技术介绍 为什么会出现JSP(Java Server Pages)技术..

Zxy_zzz的博客 1万+

《QGIS快速入门与应用基础》223:纸张大小与方向(A4/A3/自定义)

本文详细介绍了QGIS布局页面设置的核心操作,重点讲解了纸张大小与方向的设置方法。文章首先指出页面设置是地图排版的基础前提,强调合理设置可避免导出打印时出现尺寸不符等问题。随后详细说明了三种打开页面设置面板的方式,并重点解析了纸张设置的要点:标准预设纸张(A4/A3等)适用于大多数场景,提供国内常用规格对照表;自定义纸张则需谨慎使用,需注意单位选择和尺寸限制。通过界面标注图和操作步骤示意图,帮助用户掌握正确的设置方法,确保最终出图符合规范要求。文章特别提醒新手要优先使用标准预设纸张,避免常见错误,为后续地图

LuckyHanMo的博客 344

JavaWeb——JSP入门学习(JSP基本概念、JSP脚本、JSP内置对象)

目录 1 JSP基本概念 2 JSP脚本 3 JSP的内置对象 4 使用JSP改造记住上一次的访问时间的案例 本章内容只对JSP内容做入门介绍,是为了会话技术的Cookie和Session内容的承接,后续再写文章详细介绍JSP。 1 JSP基本概念 JSP,Java Server Pages,Java服务器端界面,可以理解为一个特殊页面,既可以定义html标签,又可以定义Java代码。可以简化书写! 【JSP原理】:JSP本质上就是一个Servlet 1)服务器解析请求消息,找是否有ind

数字世界 万物互联 751

【图像去噪】基于加权核范数最小化算法实现图像去噪附matlab代码

1 简介 WNNM是一种约束矩阵奇异值稀疏性的低秩算法,在NNM理论基础上增加了核范数权重,有效利用了自然图像的先验信息并提高了核范数的灵活性. 2 部分代码 ​clcclear allclose allnSig = 100;O_Img = double(imread('Monarch.png'));​randn('seed', 0);N_Img = O_Img + nSig* randn(size(O_Img)); ..

qq_59747472的博客 3114

【vsomeip3 教程】基于 vSomeIP 3.5 的路由域实践:从配置到运行状态的完整指南

___ > 前言(读者定位与准备) 目标读者:在 Linux 上做分布式/车载中间件通信的 C++ 工程师。 > 先决条件:CMake、Boost 基础;理解 TCP/UDP 与多进程通信。 > 文中术语:Routing Host(路由进程)、Application、Service/Instance、Method、Event/EventGroup、SOME/IP-SD。 > 演示环境:单机多进程 & 跨主机两套对照。

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 1159

jsp-原理和基本概念

jsp原理和基本概念学习: 1、什么jsp? 概念:java server page jsp不是一门新技术,是多门技术的组合。 jsp~html+css+js+servlet jsp同时具备自己的语法规范,但是特别简单。 jsp是一门动态网页技术。 2、为什么需要jsp?  原因:因为在使用Servlet的过程中,发现Servlet在业务逻辑处理中很方便。 但是在用户页面的展现方

呆萌大叔的博客 514

PCL点云算法与项目实战案例汇总(长期更新)

本专栏将深入探讨PCL(点云库)的基础算法,旨在帮助读者掌握点云处理的核心技术。内容涵盖点云的采样、过滤、配准、分割等基础操作,并结合实际案例,展示这些算法在工程中的应用。无论你是初学者还是有一定经验的开发者,都能通过本专栏加深对PCL的理解,提升在三维数据处理领域的技能。

纵马踏花向自由 3002

Jsp的基本概念与基本语法

jsp的基本概念 JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是在传统的网页HTML文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 它实现了Html...

qq_40883945的博客 691

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

JSP的基本概念、JPS的脚本、JSP内置对象

概念: Java Server Pages : java服 务器端页面 一个特殊的页面,其中既可以指定定义html标签,又可以定义java代码。用于简化书写!。 JSP本质上就是一个Servlet。 JSP的脚本: JSP定义Java代码的方式 1. <% 代码 %> : 定义的java代码,在service方法中。service方法中可以定义什么,该脚本中就可以定义什么。 2. <%! 代码 %> : 定义的java代码,在jsp转换后的java类的成员位置。 3.

七七的博客 542

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

jsp篇 之 基本概念

Jsp概念: 1.jsp是什么 jsp全称Java Server Pages,是一种【动态网页开发技术】。 .html文件是静态页面 .jsp 文件是动态页面 jsp页面允许我们在html代码中【嵌入java代码】,这样我们就可以在html中使用java代码来完成的功能了。 2.jsp基本认识 简单的理解,jsp就是【html页面+java代码】 但是jsp中能写的内容还不止...

weixin_30292843的博客 154

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

jsp--jsp基本概念

一、背景介绍 JSP(Java Server Pages),其根本是一个简化的Servlet设计,它实现了在Java中使用HTML标签。JSP是一种动态网页技术标准,也是JavaEE的标准。JSP和Servlet一样,是在服务器端执行的。JSP是在Servlet技术发展之后为了让开发者写html标签更方便而发展起来的技术,JSP实际上就是Servlet。 人们通...

慕村古楼诉 595

【Java Web编程 三】JSP基本概念和语法

上文中提到,Tomcat会处理JSP和Servlet两种类型的文件,那么我们先来看看这两种类型文件是什么,有什么作用,然后再从Tomcat的架构角度去看请求是怎么被处理的,本篇文章重点探讨JSP的整体运行机制。 JSP简介 JSP语法 指令标识 脚本标识 动作标识 JSP内置对象 JSP作用域 Java Bean JSP标准动作 JSP运行原理 ...

MaoLin Tian's Blog 919

JSP的基本概念及语法

jsp的访问过程: 客户--jsp--应用服务器编译--[数据库 -- 应用服务器]--客户 jsp的编译过程 jsp-- java -- class再返回给客户端,如果jsp文件没有改变,则不再编译,编译好的class及java文件放在tomcat目录的work目录下 jsp指令 格式: 例: 各语句说明: language:为当前使用的语言,一般为JAV

gfdonx的专栏 847

jsp的指令和jsp的基本概念

jsp的指令和jsp的基本概念 Servlet方法的一些弊端        (1)、开发者和维护应用程序的成员必须对Java编程知识有全面的了解,因为处理代码和处理html元素混合在一块        (2)、如果要改变应用的外观,或者增加对新客户类型的支持,则需要对servlet代码进行更新和重编译        (3)、在设计应用界面时,很难充分利用web页面开发工具。如果这种工具用于

尉微的博客专栏 631

JSP基本概念及运行原理

JSP全称Java Server Page。 它是一种支持Java语言的运行在服务器端的页面; 使用HTML嵌套java代码实现。(支持html标签,也可以编译执行java代码)

北京Java青年 1296

重拾JSP - JSP基本概念

1、JSP页面的工作原理 1)浏览器发送一个HTTP请求到服务器,服务器识别HTTP请求是一个JSP页面时,将其转发给容器,容器将其转换成Servlet的内容(Java代码)。 2)容器首先检查是否需要编译这个文件,如果这个文件没被编译过或者在上次编译后被更改过,则编译这个JSP文件生成Servlet的一个可执行类。 注解:容器是用来容纳其它组件的,这些组件包括JSP或者Servl...

azx59285的博客 175

JSP基础中的基本概念

JSP基础中的基本概念URL:Unifrm Resource Locator即统一资源0定位系统,就是我们通常所说的网址URL是惟一能够识别Internet上具体的计算机、目录或文件位置的命名约定什么是会话当前浏览器与服务器间多次的请求、响应关系,被称作一个会话什么是设计模式是一套被反复使用、多数人知晓的、代码设计经验的总结模式必须是典型问题(不是个别问题)的解决方案设计模式的作用解决一类问题的成功经验是为了可重用代码、让代码更容易被他人理解、保证代码可靠性MVC设计模式的模块组成模型:代表应用程序状态和业

Fishing_Moon的专栏 594

Jsp基本概念

JSP 1.基础概念 1.1 URL(统一资源定位符) 协议:约定.(http) IP:地址(英特网中电脑唯一标识) 端口号:电脑中软件额唯一标识 http://localhost:8080/news/index.hmtl 协议://ip地址:端口号/项目名称/请求地址 转载...

a87986786的博客 166
上一篇: Java中Collection集合
下一篇: SpringMVC框架原理图
午-夜
博客等级 码龄12年 95粉丝 133原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值