引入 JSP 的概念:

通俗来讲 : 在 HTML 代码中混合 Java 代码能让网页具有动态的功能,
而嵌入了 Java 代码的网页就是 JSP。

JSP 的特点(优点) :

1、运行于服务端(是一种脚本语言)
2、能够对客户端展现内容
3、变化网页文档
4、处理用户提交的表单数据

JSP 与 HTML 有什么区别 :

1、相对来说 JSP 是 动态的,实时的, HTML 是静态的,并不会随着一些东西而改变。
官方一点来说 :
HTML 是静态页面,也就是事先由用户写好放在服务器上,由 Web 服务器向客户端发送。
JSP 页面是由 JSP 容器执行该页面的 Java 代码部分,然后 实时 生成的 HTML 页
面,因此说它是服务器端动态页面。
2、另外,在网页查看源码时 JAVA 代码不会展现在客户端(也就是说用户是看不到我们的
Java 代码的),但是可以看到 HTML 代码(包括注释的部分)。

注释:

1、能够发送给客户端的,可以在源代码文件中显示其内容。
HTML 的注释方式 :
<!--注释内容-->
2、不能发送给客户端的,也就说不会再客户端的源代码文件中显示其内容。
a、 JSP 注释:
<%--注释内容--%>
b、Java 代码注释
// 单行注释
/**/ 多行注释

Jsp 表达式 :

1、主要作用:用于定义 JSP 的一些输出、
将其里面的内容所运算的结果输出到客户端。
2、基本语法 :
<%= 变量/表达式/返回值%>
3、example
<%= msg%> : 将 msg 内容输出到客户端(表达式没有分号)
等价于 <%out,println(msg);%>(注意这里有分号)
4、细节 :
a、 JSP 表达式中不能用 “;”结束。
b、 JSP 表达式中不能出现多条语句。
c、 JSP 表达式中的内容一定是字符串类型的,或者通过 toString()函数转换成
字符串的形式。

为什么 JSP 表达式中不能有 分号?

JSP 中的表达式是转换成 out.println(JSP);表达式进行输出的。
如果我们在表达式中 + ; 那么转换的时候就成了
out.println(表达式;);
造成语法错误。

JSP 程序段:

<% JAVA代码 %>
注意 : 不能在 JSP 程序段中定义函数

JSP 声明 :

1、像其他语言一样,在 JSP 中变量也需要先定义再使用,不同的是 JSP 中定义的变量都是
全局变量,一经定义可以在任何位置进行使用。
2、基本语法:
<!% %>
3、注意,在 JSP 中只能做定义,不能实现逻辑,也就是说不能在定义的时候输出内容,只能定义
一些东西。

JSP 指令 :

1、Jsp 指令的作用 :
告诉 JSP 引擎对 JSP 页面如何编译,不包含控制逻辑
不会产生任何可见的输出。
2、基本用法 :
<%@ 指令类别 属性 1 = "属性值1" .. 属性 n = "属性值 n" %>
3、 Jsp 指令的几种类型 :
page (比较常用)
include (比较常用)
taglib
4、Page 指令:
作用 :
a、设定页面的属性和相关的功能
b、用户可以利用其进行导入需要的类
c、指定 Jsp 输出内容的类型
d、指定处理异常的错误页面
具体形式:
a、导入包 :
<%@ page import = "包名.类名" %>
<%@ page import = "包名.*" %>
b、设定字符集 :
<%@ page pageEncoding = "编码类型"%>
c、设定错误页面 :
两个属性:
errorPage : 指定一个页面,当 JSP 程序出现未被捕获的异常时跳转到
这个指定的页面。
isErrorPage : 跳转到的页面需要 isErrorPage 属性指明处理其他页
面的错误信息。
用法:
在发生异常的页面使用以下代码 :
<%@ page errorPage = "需要跳转的页面" %>
跳转到的页面使用下面代码 :
<%@ page isErrorPage = "true" %>
(改成false 貌似也可以,具体规律还未总结出来)
d、设定 MIME 类型 和字符编码 :
MIME :
多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,
当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些
客户端自定义的文件名,以及一些媒体文件打开方式。
用法 :
用户可以使用 contentType 属性设置 JSP 的 MIME 类型和 可选字符编码 :
<%@ page contentType = "MIME类型;charset = "字符编码" %>
5、include 指令:
作用 : 实现代码的复用(避免重复的操作),相当于是调用一个函数,可以多次调用,
与函数调用不同 的是这里的变量不能与现有文件的变量出现重复,否侧程
序会报错。
用法 :
<%@ page include file = "文件名"%>

JSP 动作 :

作用 :
控制服务器的行为。
用法 :
<jsp:动作名 属性1 = "属性值1" .... 属性n = "属性值n" />
<jps:动作名 属性1 = "属性值1" .... 属性n = "属性值n" > 相关内容 </jsp:动作名>
动作 :
1、jsp : include 表示当页面被请求的时候引入一个文件
2、jsp : forward 表示将请求转到另一个页面
3、jsp : useBean 表示获得 JavaBean 的一个实例
4、jsp : setProperty 表示设置 JavaBean 的属性
5、jsp : getProperty 表示获得 JavaBean 的属性
6、jsp : plugin 表示根据浏览器的类型为 Java 插件生成 OBJECT 或 ENBED 两种标记。

后记 :

还有很多地方不足,如果有错误的地方,欢迎大家指出来,共同进步。

JavaWeb学习(四) : JSP 基本语法的更多相关文章

  1. JavaWeb学习笔记——jsp基础语法

    1.JSP注释 显式注释 <!-- 注释内容 --> 隐式注释,隐式注释在客户端无法看见 // /* */ <% 注释内容 %> 2.Scriptlet(小脚本程序) 所有嵌入 ...

  2. javaweb学习5——JSP

    声明:本文只是自学过程中,记录自己不会的知识点的摘要,如果想详细学习JavaWeb,请到孤傲苍狼博客学习,JavaWeb学习点此跳转 本文链接:https://www.cnblogs.com/xdp- ...

  3. JavaWeb总结(四)—JSP深入解析

    一.JSP域对象 1.JSP属性范围(域对象范围) JSP提供了四个域对象,分别是pageContext.request.session.application. pageContext: 属性范围仅 ...

  4. JavaWeb学习 (十四)————JSP基础语法

    一.JSP模版元素 JSP页面中的HTML内容称之为JSP模版元素.  JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观. 二.JSP表达式 JSP脚本表达式(expression)用于将 ...

  5. javaweb(十五)——JSP基础语法

    任何语言都有自己的语法,JAVA中有,JSP虽然是在JAVA上的一种应用,但是依然有其自己扩充的语法,而且在JSP中,所有的JAVA语句都可以使用. 一.JSP模版元素 JSP页面中的HTML内容称之 ...

  6. JavaWeb学习 (十七)————JSP属性范围

    所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围. 一.JSP属性范围 JSP中提供了四种属性范围,四种属性范围分别指以下四种: 当前页:一个属性只能在一个页面中取得 ...

  7. JavaWeb学习 (四)————Http协议

    一.什么是HTTP协议 HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的 ...

  8. JavaWeb学习之JSP(三) EL表达式

    EL表达式 什么是EL表达式   EL,Expression Language,表达式语言,是一种在JSP页面中获取数据的简单方式,通过${变量名}的方式可以获取到值,需要注意的是EL只能从 page ...

  9. JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)

    1.JSP常用标签 * 只要支持JSP文件,常用标签有可以直接使用 * 格式: jsp:xxxx * jsp:forward ,完成jsp页面的转发 * page属性:转发的地址 <% requ ...

随机推荐

  1. tensorboard网络结构

    一.tensorboard网络结构 import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_data ...

  2. 18年第一弹射 和网络有关; 艾曲塞嗯诶系列篇 san

    62: 管理员想要更新 AR2200路由器的VRP, 正确的方法: 1)管理员把 AR2200 配置为FTP客户端,通过FTP来传输VRP软件 2)管理员把AR2200 配置为FTP服务器,通过FTP ...

  3. .net core 不是开源的么 作为菜 不能贡献源码 只有 欣赏额

    step one 去download一份 与前辈在一起

  4. FastDF step by step

    step one 肯定是安装一个FastDF服务了 step two FasDFS配置节点 step third 码代码

  5. 认识JPA以及如何使用JPA(1)

    一:JDBC是什么? JDBC统一了Java应用程序访问数据库的标准. 二:什么是JPA? JPA统一了Java应用程序使用使用ORM框架的方式. 配置文件说明: 三:使用JPA的第一个实例. 1.创 ...

  6. AVR单片机教程——矩阵键盘

    本文隶属于AVR单片机教程系列.   开发板上有4个按键,我们可以把每一个按键连接到一个单片机引脚上,来实现按键状态的检测.但是常见的键盘有104键,是每一个键分别连接到一个引脚上的吗?我没有考证过, ...

  7. 宝塔面板管理阿里云服务器FTP不能用

    # 宝塔面板管理阿里云,ftp不能用 解决方法 搜ftp点击设置 然后Ctrl+F搜索ForcePassiveIP 注意2在默认情况下是带#号的,去掉#号,后面的ip地址是阿里云的公网ip 重启,再次 ...

  8. 整合spring-data-redis以及redisTemplate的使用

    一.导入依赖配置 <dependency> <groupId>redis.clients</groupId> <artifactId>jedis< ...

  9. C++读取MNIST数据集

    MNIST是一个标准的手写字符测试集. Mnist数据集对应四个文件: train-images-idx3-ubyte: training set images  train-labels-idx1- ...

  10. Linux基础与搭建

    1 学习目标 了解Linux的简介与安装 掌握Linux常用的命令 掌握Linux系统上JDK.Mysql.Tomcat的安装 2  Linux简介 2.1 Unix简介 Unix是一个强大的多用户. ...