当前位置 : 主页 > 编程语言 > java >

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)

来源:互联网 收集:自由互联 发布时间:2022-07-20
1.什么是jsp,它有什么用? jsp的全称是java server pages。是Java的服务器页面。 jsp的主要作用是代替Servlet程序回传html页面的数据。 因为Servlet程序回传html页面数据是一件非常繁琐的事情、


1.什么是jsp,它有什么用?

jsp的全称是java server pages。是Java的服务器页面。
jsp的主要作用是代替Servlet程序回传html页面的数据。
因为Servlet程序回传html页面数据是一件非常繁琐的事情、开发成本和维护成本都极高。

2.jsp如何访问?

jsp页面和html页面一样,都是存放在web目录下,访问也跟访问html页面一样。

比如:
在web目录下有如下的文件:
web目录
a.html页面 访问地址是======>>>>>> http://ip:port/工程路径/a.html
b.jsp页面 访问地址是======>>>>>> http://ip:port/工程路径/b.jsp

3.jsp的本质是什么?

jsp页面的本质上是一个Servlet程序。

原因:

当我们第一次访问jsp页面时,Tomcat服务器会帮我们把jsp页面翻译成为一个java源文件,并且对它编译成为.class字节码程序。我们打开java源文件不难发现其里面的内容是:

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp页面


我们跟踪源代码发现,HttpJspBase类。它直接继承了HttpServlet类。也就是说,jsp翻译出来的java类,间接继承了HttpServlet类,也就是说,翻译出来是一个Servlet程序。

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_02


总结:通过翻译的java源代码我们就可以得到结果:jsp就是Servlet程序。

大家也可以去观察翻译出来的Servlet程序的源代码,不难发现,其底层实现,也是通过输出流,把html页面数据回传给客户端。

4. jsp的三种语法

a)jsp头部的page命令

jsp的page指令可以修改jsp页面中的一些在重要的属性或者行为。

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

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_03


b)jsp中的常用脚本

i. 声明脚本(极少使用)

声明脚本的格式是: <%! 声明java代码%>

作用:

可以给jsp翻译出来的java类定义属性和方法甚至是静态代码块、内部类等。

1.声明类属性
2.声明static静态代码块
3.声明类方法
4.声明内部类<%@ page import="java.util.Map" %>
<%@ page import="java.util.HashMap" %><%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2020/7/18
Time: 8:58
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>

<%--:
1.
2.static
3.
4.
--%>
<%--1.--%>
<%!
private Integer id;
private String name;
private static Map<String,Object> map;
%>
<%--2.static--%>
<%!
static{
map=new HashMap<String,Object>();
map.put("key1","value1");
map.put("key2","value2");
map.put("key3","value3");
}
%>
<%--3.--%>
<%!
public int abc(){
return 12;
}
%>
<%--4.--%>
<%!
public static class A{
private Integer id=12;
private String abc="abc";
}

%>
</body>

</html>

ii. 表达式脚本(常用)
表达式脚本的格式是:<%=表达式%>
表达式脚本的作用是:在jsp页面上输出数据。

表达式脚本的特点:

1.所有的表达式脚本都会被翻译到_jspService方法中
2.表达式脚本都会被翻译成为out.print()输出到页面上
3.由于表达式脚本翻译的内容都在_jspService()方法中,所以_jspService()方法中的对象都可以直接使用。
4.表达式脚本中的表达式不能以分号结束。

练习:

1.输出整型
2.输出浮点型
3.输出字符串
4.输出对象<%=12 %><br>
<%=12.12%><br>
<%="我是字符串"%><br>
<%=map%><br>
<%=request.getParameter("username")%>

浏览器结果:

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_04

iii.代码脚本
代码脚本的格式:
<%
java语句
%>
代码脚本的作用是:可以在jsp页面中,编写我们自己需要的功能(写的是java语句)。

代码脚本的特点是:
1.代码脚本翻译之后都在_jspService方法中
2.代码脚本由于翻译到_jspService()方法中,所以在_jspService()方法中的现有对象都可以直接使用。
3.还可以由多个代码脚本块组合完成一个完整的java语句。

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_html页面_05

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_java_06


jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_07


jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_08

6.jsp中的out输出和response.getWriter输出的区别

response中+表示响应,我们经常用于设置返回给客户端的内容(输出)

out也是给用户做输出使用的。

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_java_09


jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_java_10

7.jsp常用标签之静态包含

jsp 的介绍(什么是jsp、作用、语法、page指令、静态包含)_jsp_11


上一篇:6.0 每个课程增加对应的协议
下一篇:没有了
网友评论