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. iOS开发之SceneKit框架--SCNLight.h

    1.SCNLight简介 用于添加光源,连接到一个节点照亮现场,可以给场景添加不同的灯光,模拟逼真的环境. 2.四种灯光的简介 添加一个box立方体.一个tube圆柱管道和一个地板floor,没有灯光 ...

  2. idea运行tomcat,控制台中文乱码

    加入参数:-Dfile.encoding=UTF-8

  3. POJ-1502-MPI Maelstrom-dijkstra+输入处理

    BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distribute ...

  4. 微信小程序 主题皮肤切换(switch开关)

    示例效果: 功能点分析: 1.点击switch开关,切换主题皮肤(包括标题栏.底部tabBar):2.把皮肤设置保存到全局变量,在访问其它页面时也能有效果3.把设置保存到本地,退出应用再进来时,依然加 ...

  5. Hive学习详细版

    一.概述 1.Hadoop的开发问题 只能用java语言开发,存在语言门槛 需要对Hadoop底层原理,api比较了解才能做开发 开发调试比较麻烦 2.什么是Hive Hive是基于Hadoop的一个 ...

  6. appium基础一:连接手机和appium-desktop定位元素

    一.获取手机信息 adb devices获取手机或模拟器的设备名 aapt dump badging xxxx.apk获取app的包名.入口等基本信息 如果想要知道手机原生携带的app的基本信息,首先 ...

  7. JS完美运动框架【利用了Json】

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  8. 【CQOI2015】选数

    题面 Description 我们知道,从区间[L,H](L和H为整数)中选取N个整数,总共有(H-L+1)^N种方案.小z很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的N个整数都求一次 ...

  9. fiddler抓包工具遇到的问题-------502报错

    遇到的问题: 打开浏览器,输入本机的虚拟机地址的bugfree,出现无法连接的提示,具体是: [Fiddler] The connection to '192.168.211.128' failed. ...

  10. 关于Cadence SPB 16.6 破解的一些关键步骤

    网上搜索到的破解方法,一般来说流程都是没有什么大问题的.较详细的一个破解流程可参照: http://www.mr-wu.cn/cadence-orcad-allegro-spb-16-6-instal ...