JavaWeb学习打卡13(JSP原理解析)

JavaWeb学习打卡13(JSP原理解析)

什么是JSP

JSP(全称:Java Server Pages):Java服务器端页面,也和Servlet 一样,用于动态Web 技术!

JSP最大特点:

写JSP就像写HTML区别:

HTML只给用户提供静态的数据JSP页面中可以嵌入JAVA代码,为用户提供动态是数据;

JSP原理

思路:JSP到底怎么执行的!

服务器内部工作

tomcat 中有一个work 目录IDEA 中 使用 Tomcat 会在IDEA 的 tomcat 中生成一个work 目录

我电脑地址为:

D:\Environment\apache-tomcat-9.0.46\work\Catalina\localhost\ROOT\org\apache\jsp

发现页面转变成了Java程序!

JSP文件的经历过程:

由此可以知道:

浏览器向服务器发送请求,不管访问什么资源,其实都是在访问Servlet !JSP最终也会被转换成一个Java类JSP本质上就是一个Servlet

1、JSP 内置的一些对象:

2、JSP在输出页面前会增加以下代码:

3、以上这些 内置对象,我们可以在编写 JSP 页面时,可以直接使用!

在JSP页面中,只要是JAVA代码就会原封不动的输出;

如果是HTML代码,就会转换为 java 代码

eg:

我们我们在 index.jsp 文件同一目录下创建一个 hello.jsp 文件:

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

Title

<%

String name = "xiaoxu";

%>

<%=name%>

运行结果:

JSP 基础语法

任何语言都有自己的想法,JAVA中有。JSP 作为Java 技术的一种应用,它拥有一些自己扩充的语法(了解即可!),Java所有语法都支持!

JSP表达式和脚本片段 :

可以把JSP表达式: <%= a%> 用EL表达式代替 :${ a }

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

$Title$

<%-- JSP表达式 格式 : <%= 变量或者表达式 %>

作用:用来将程序的输出,输出到客户端

--%>

<%= new java.util.Date()%>


<%-- JSP 脚本片段 --%>

<%

int sum = 0;

for (int i = 0; i <= 100; i++) {

sum+=i;

}

out.println("

Sum = "+sum+"

");

%>

运行结果:

JSP 声明 (在 % 后加 ! )会被编译到 SP 生成 Java 类中,而上面的Jsp表达式和脚本片段,就会被生成到_jspServlet 方法中

在JSP中,嵌入Java代码即可!

<%--JSP 声明--%>

<%!

static {

System.out.println("Loading Servlet!");

}

private int globalvar = 0;

public void xiaoxu(){

System.out.println("进入了方法xiaoxu");

}

%>

JSP表达式语法总结:

<%%> //脚本片段

<%=%> //jsp 表达式输出一个值

<%!%> //定义全局的方法

<%-- JSP的注释 --%> //注释

<!-- HTML的注释 --> //注释

JSP的注释,不会在客户端显示,HTML的注释就会显示!

JSP自定义错误页面:

方法一:

我们先在 index.jsp 文件的同一目录下新建一个jsp2 .jsp 文件,用来填写错误,和发生错误的页面跳转:

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

<%--自定义错误页面--%>

<%@ page errorPage="error/500.jsp" %>

Title

<%

int x = 1/0;

%>

随后按以下目录创建文件夹和文件,并找一张500页面报错的png文件:

在500.jsp 文件中写:

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

Title

500

运行结果:

自定义错误页面 ,方法二:

直接在 error 文件夹下 ,创建一个 404.jsp 文件,并编写该页面:

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

Title

自定义的404页面

然后在 web.xml 文件中定义错误发生时的页面跳转:

404

/error/404.jsp

运行结果:

相关星际资讯

大胸女世界杯(卡塔尔世界杯主题曲主唱大胸是谁)
饭局狼人杀
最佳娱乐365bet

饭局狼人杀

🕒 07-02 👁️ 6387
传祺GS8新款价格2025款多少钱?选车指南与落地价全解析
365wm完美体育官网

传祺GS8新款价格2025款多少钱?选车指南与落地价全解析

🕒 06-27 👁️ 1869