JSP简介:

在HTML中嵌入Java脚本代码,由应用服务器中的JSP引擎来编译和执行嵌入的Java脚本代码,然后将生成的整个页面信息返回给客户端;

一个JSP页面包含:静态内容(HTML静态文本),JSP指令,JSP脚本元素和内置对象,JSP动作,用户自定义标签

脚本程序:脚本程序可以包含任意量的Java语句、变量、方法或表达式,只要它们在脚本语言中是有效的。

语法格式:

<% Java代码 %>

与其等价的XML语句:

<jsp:scriptlet>
// Java代码...
<jsp:scrilptlet>

JSP声明:一个声明语句可以声明一个或多个变量、方法,供后面的Java代码使用。JSP中变量和方法必须声明后才能使用

声明语法格式:在页面中定义Java代码

<%! // Java代码... %>

与其等价的XML语句:

<jsp:declaration>
// Java代码...
</jsp:declaration>

JSP表达式:表达式元素中可以包含任何符合Java语言规范的表达式

一个JSP表达式中包含的脚本语言表达式,先被转化成String,然后插入到表达式出现的地方。

语法格式:对数据的显示,系统将其作为一个值进行计算和显示

<%= Java表达式/变量 %>

与其等价的XML语句:

<jsp:expression>
// Java表达式/变量
</jsp:expression>
JSP注释:为代码作注释以及将某段代码注释掉。
● HTML的注释:<!--    这是注释,但客户端可以查看到 -->

● JSP注释:<%--    这也是注释,客户端无法查看到 --%>

● 在JSP脚本中的注释:<%    //单行注释 %> <%    /*多行注释/* %>

JSP指令:用来设置与整个JSP页面相关的属性

语法格式:<%@ directive attribute="value" %>
指令 描述
<%@ page ...%> 定义页面的依赖属性,比如脚本语言、error页面、缓存需求等
<%@ include ...%> 包含其他文件
<%@ taglib ...%> 引入标签库的定义,可以是自定义标签

中文编码问题

如果我们要在页面正常显示中文,我们需要在 JSP 文件头部添加以下代码:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

路径跳转问题在jsp里面经常会有跳转,就涉及到绝对路径和相对路径问题。

绝对路径一般表示:一般都使用绝对路径

  • "./" 表示的是当前目录
  • "../" 表示上一级目录,"../../" 表示的是上级目录的上级目录
  • 客户端绝对路径:http://主机名:端口号/
  • 服务器端绝对路径:http://主机名:端口号/项目名

JSP行为:JSP行为标签使用XML语法结构来控制servlet引擎

它能够动态插入一个文件,重用JavaBean组件,引导用户去另一个页面,为Java插件产生相关的HTML等等。

语法格式:它严格遵守XML标准

<jsp:action_name attribute="value" />
语法 描述
jsp:include 用于在当前页面中包含静态或动态资源
jsp:useBean 寻找和初始化一个JavaBean组件
jsp:setProperty 设置 JavaBean组件的值
jsp:getProperty 将 JavaBean组件的值插入到 output中
jsp:forward 从一个JSP文件向另一个文件传递一个包含用户请求的request对象
jsp:plugin 用于在生成的HTML页面中包含Applet和JavaBean对象
jsp:element 动态创建一个XML元素
jsp:attribute 定义动态创建的XML元素的属性
jsp:body 定义动态创建的XML元素的主体
jsp:text 用于封装模板数据

JSP隐含(内置)对象

JSP支持九个自动定义的变量,称之为隐含(内置)对象

对象 描述 作用
request HttpServletRequest类的实例 封装了来自客户端、浏览器的各种信息
response HttpServletResponse类的实例 封装了服务器的相应信息
out PrintWriter类的实例 用于向客户端、浏览器输出数据
session HttpSession类的实例 用来保存会话信息。即可以实现在同一个用户的不同请求之间共享数据
application ServletContext类的实例 代表了当前应用程序的上下文。可以在不同的用户之间共享信息
config ServletConfig类的实例 封装类应用程序的配置信息
pageContext PageContext类的实例 提供了对JSP页面所有对象以及命名空间的访问
page 类似于Java类中的this关键字 指向了当前JSP程序本身
exception Exception类的实例 封装了JSP程序执行过程中发生的异常和信息错误

控制流程语句

JSP提供对Java语言的全面支持。可以在JSP程序中使用Java API甚至建立Java代码块,包括判断和循环语句等。

判断语句:if...else ,switch...case

<% if (day == 1 | day == 7) { %>
<p>今天是周末</p>
<% } else { %>
<p>今天不是周末</p>
<% } %> <%
switch(x) {
case 1: code... break;
case 2: code... break;
case 3: code... break;
default: code;
}
%>
循环语句:for,while,do...while
<%for ( 语法表达式 ){ %>
code...
<%}%> <%while ( 语法表达式 ){ %>
code...
<%循环控制语句%>
<%}%>

JSP - (Java Server Pages) - Java服务器界面的更多相关文章

  1. 1.1(学习笔记)JSP(Java Server Pages)基础(脚本元素、指令元素)

    一.JSP简介 JSP全称为Java Server Pages,是一种动态网页开发技术,可以在HTML界面中嵌入java代码, 实现动态的提供数据.访问JSP时服务器会将JSP翻译成Servlet,访 ...

  2. jsp(java server pages):java服务器端的页面

    jsp(java server pages):java服务器端的页面 JSP的执行过程1.浏览器输入一个jsp页面2.tomcat会接受*.jsp请求,将该请求发送到org.apache.jasper ...

  3. 什么是Java Server Pages?

    JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%>结束. JSP是一种Java servlet ...

  4. Jsp (Java Server Pages)相关知识九大内置对象和四大作用域

    一.初识JSP Jsp页面的组成:静态内容.指令.表达式.小脚本.声明.标准动作.注释等元素构成 Url:统一资源定位符 Url组成:协议.主机名(包括端口号).路径 1.注释的方式: 1.HTML注 ...

  5. JSP(Java Server Pages,即:Java服务器页面

    是一种跨平台的动态网页技术标准,由Sun Microsystems公司倡导.多家公司参与建立. 它在HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(* ...

  6. 1.3(学习笔记)JSP(Java Server Pages)内置对象

    一.内置对象 内置对象又称内建对象.隐式对象,是由服务器自动创建实例化的, 用户在使用时不需要显示的创建,可直接使用. jsp内置对象名称,类型及作用域 Scope代表该内置对象的作用范围,page表 ...

  7. JSP(java server pages)安装开发和执行环境

    JSP是一种动态网页技术标准. 它是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag)的.jsp文件: java程序段:操纵数据库,重新定向网页,发送email等 ...

  8. 什么是jsp(java server pages)

    JSP是一种运行在服务器端的脚本语言,是用来开发动态网页的技术,它是JAVA Web 程序开发的重要技术.本章介绍JSP技术的相关概念以及如何开发JSP程序,主要内容包括JSP技术简介.JSP的处理过 ...

  9. JSP(Java Server Pages)内置对象

    request对象 (1)访问请求参数 处理HTTP请求中的各项参数.在这些参数中,最常用的就是获取访问请求参数.当通过超链接的形式发送请求时,可以为该请求传递参数,这可以通过在超链接的后面加上问好& ...

随机推荐

  1. Java-Maven-pom.xml-porject-parent:parent

    ylbtech-Java-Maven-pom.xml-porject-parent:parent 1.返回顶部 1.Inherit defaults from Spring Boot <!-- ...

  2. 4_5.springboot2.x之Web开发RestfulCRUD操作

    1).RestfulCRUD:CRUD满足Rest风格 URI: /资源名称/资源标识 HTTP请求方式区分对资源CRUD操作 普通CRUD(uri来区分操作) RestfulCRUD 查询 getE ...

  3. 1、docker centos 安装

    Docker for CentOS: 第一步:使用官方yum仓库 [root@linux-node1 ~]# yum install -y yum-utils [root@linux-node1 ~] ...

  4. PyTorch中的C++扩展

    今天要聊聊用 PyTorch 进行 C++ 扩展. 在正式开始前,我们需要了解 PyTorch 如何自定义module.这其中,最常见的就是在 python 中继承torch.nn.Module,用 ...

  5. CF627A Xor Equation

    题意:a+b=s,a^b=x(异或).问有多少有序Z+对(a,b)满足条件. 标程: #include<cstdio> using namespace std; typedef long ...

  6. 从虚拟机视角谈 Java 应用性能优化

    从虚拟机视角谈 Java 应用性能优化 周 祥, 软件工程师, IBM 简介:Java 的普及和广泛应用,以及其基于虚拟机运行的机制,使得性能问题越来越重要.本文从 Java 虚拟机的角度,特别是垃圾 ...

  7. postgresql计算2个日期之间工作日天数的方法

    select date_part( 'day', minus_weekend(begin_date,end_date)) from table1 where name in ('a', 'b', 'c ...

  8. Python-函数基础(1)

    目录 函数定义 什么是函数? 定义函数三种形式 函数定义的特性 函数调用 函数返回值 return的特性: 函数的参数 有参函数 形参 位置形参 默认形参 实参 位置实参 关键字实参 可变长参数 形参 ...

  9. nginx 解决问题

  10. Cooki and Session

    目录 Cookie Cookie的由来 什么是Cookie Cookie的原理 查看Cookie Django中操作Cookie 获取Cookie 设置Cookie 删除Cookie Session ...