当前位置: 首页 > article >正文

JSP笔记

JSP笔记

目录

  1. JSP简介
  2. JSP原理
  3. JSP语法
    页面结构
    变量声明和方法定义
    Java程序片
    Java表达式
    Java注释
    JSP指令标记
    JSP动作标记
    内置对象
  4. JavaBean
  5. JavaServlett
  6. MVC模式

一、JSP简介

JSP是Java server Page的缩写,是由Sun公司倡导,许多公司参与,于1999年推出的一种web服务设计标准。要想掌握JSP技术,需要有较好的Java语言基础和基本的HTML语言方面的知识。

二、JSP原理

所谓B/S模式(Browser/Server浏览器/服务器模式),是指需要获取信息的用户使用浏览器向服务器发出请求,服务器对此做出响应,将有关信息发送给用户的浏览器。

在B/S模式中,服务器上必须有所谓的Web应用程序,服务器通过运行这些Web应用程序来响应用户的请求。
在这里插入图片描述

当服务器上的一个JSP页面被第一次请求执行时,服务器上的JSP引擎首先将JSP页面文件转译成一个java文件,并编译这个java文件生成字节码文件,然后执行字节码文件响应客户的请求。
把JSP

  • 页面中普通的HTML标记符号交给客户的浏览器执行显示。
  • 负责处理JSP标记,并将有关的处理结果发送到客户的浏览器。
  • 执行“<%”和“%>”之间的Java程序片(JSP页面中的动态部分),并把执行结果交给客户的浏览器显示。
  • 当多个客户请求一个JSP页面时,Tomcat服务器为每个客户启动一个线程,该线程负责执行常驻内存的字节码文件来响应相应客户的请求。这些线程由Tomcat服务器来管理,将CPU的使用权在各个线程之间快速切换,以保证每个线程都有机会执行字节码文件。

三、JSP语法

1. JSP页面结构

在传统的HTML页面文件中加入Java程序片和JSP标签,就构成了一个JSP页面。
JSP页面可由5种元素组合而成:
① 普通的HTML标记符;
② JSP标记,如指令标记、动作标记;
③ 变量和方法的声明;
④ Java程序片;
⑤ Java表达式

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page pageEncoding="UTF-8" %>
<%@ page import="java.time.LocalDate" %>
<html>
<head>
    <!-- 标题 -->
    <title>JSP页面</title>
</head>
<body>
  <%-- 下面是成员变量的声明 --%>
  <%!  String s="C:\\myfile\\jspfile\\example.jsp";
  %>
  <%--方法的定义--%>
  <%!
      public int continueSum(int start, int end){
   
          int sum=0;
          for (int i = start; i <end ; i++) {
   
              sum=sum+i;
          }
          return  sum;
  }
  %>
  <%-- 下面是Java程序片 --%>
  <%  int index=s.lastIndexOf("\\");
      String str=s.substring(index+1);
  %>
  <BR>
  <%-- 下面是Java表达式 --%>
  <%= str %>
</body>
</html>

2. 变量声明和方法定义

在“<%!”和“%>”标记符号之间声明变量,定义方法以及定义类。

在“<%!”和“%>”标记符之间声明变量,即在“<%!”和“%>”之间放置Java的变量声明语句。变量的类型可以是Java语言允许的任何数据类型。例如:

   <%! int  a, b=10 , c;
        String tom=null,jerry="love JSP";
         Date date; 
    %>

“<%!”和“%>”之间声明的变量在整个JSP页面内都有效,将这些变量称为JSP页面的成员变量,与“<%!”、“%>” 标记符在JSP页面中所在的书写位置无关。JSP引擎将JSP页面转译成Java 文件时,将“<%!”、“%>” 标记符之间声明的变量作为类的成员变量,这些变量占有的内存空间直到JSP引擎关闭才释放。

  <%--方法的定义--%>
  <%!
      public int continueSum(int start, int end){
   
          int sum=</

http://www.kler.cn/a/613016.html

相关文章:

  • python多态、静态方法和类方法
  • 高速电路中的存储器应用与设计三
  • Vala 编程语言教程-继承
  • C 语言文件读写操作详解
  • Java Synchronized底层原理:Monitor机制、锁膨胀、自旋优化与偏向锁细节解密
  • 电气技术:未来自动化的心脏
  • RAG生成中的多文档动态融合及去重加权策略探讨
  • springboot 四层架构之间的关系整理笔记二
  • 【CSS3】02-选择器 + CSS特性 + 背景属性 + 显示模式
  • 硬件老化测试方案的设计误区
  • sock文件介绍--以mysql.sock为例
  • torchvision中数据集的使用
  • 基于神经网络的文本分类的设计与实现
  • 告别代码Bug,GDB调试工具详解
  • 使用Selenium和lxml库搜房网爬取某地区房屋信息(python、pycharm爬虫)
  • 某投行日志记录解决方案二之日志异步落盘: 自定义注解+反射+AOP+异步多线程,实现高并发场景下的统一日志治理方案
  • 94二叉树中序遍历解题记录
  • SpringCloud-环境和工程搭建
  • 基于SpringBoot + Vue 的考勤管理系统
  • 浅谈数据结构