JSP基础

本文详细探讨了JSP的本质,揭示其实际上是一个Servlet,并通过实例展示了JSP转换为.java文件的过程。同时,解释了JSP的实现原理,即通过Web服务器将JSP翻译成.java并编译执行。此外,还介绍了JSP的基础语法,包括直接输出、脚本元素、声明和表达式等,以及如何设置页面指令。通过对JSP的深入解析,有助于读者更好地理解和运用这一技术。
摘要由CSDN通过智能技术生成

目录

JSP本质:

JSP实现原理:

JSP基础语法:


JSP本质:JSP本质是一个JAVA程序(Servlet)。

通过查看JSP相关的帮助文档或源码,可以发现JSP和Servlet的关系。

在编译器中(示范为IDEA),任意写一个JSP程序。如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<h1>
    这是一个JSP_Demo
</h1>
</body>
</html>

启动服务器,通过浏览器进行访问后。得到如下页面:

 

 在编译器上服务器的控制端,找到CATALINA_BASE,如图:

复制 CATALINA_BASE,在硬盘中找到对应的地址。会有如下的文件夹目录

其中,conf目录下是一些配置文件,logs目录下是日志,work就是服务器工作目录。进入work目录,点击Catalina/localhost/JSP/org/apache/jsp,找到如下的文件。

 到这里,就验证了,JSP其实就是一个java程序的说法,进入Demo_jsp.java。 会发现,一个.jsp程序是继承一个HTTPJspBase程序,一个HTTPJspBase程序是继承HttpServlet。所以,JSP的本质其实就是一个Servlet。

public final class Demo_jsp extends org.apache.jasper.runtime.HttpJspBase
    implements org.apache.jasper.runtime.JspSourceDependent,
                 org.apache.jasper.runtime.JspSourceImports {}
/***********************/
public abstract class HttpJspBase extends HttpServlet implements HttpJspPage {}

JSP实现原理:

JSP是通过Web服务器将.jsp文件翻译为.java文件,再进行编译生成.class文件,最后执行.class文件。

JSP基础语法:

JSP中最基础的语法有4个:

如果一段语句直接写在.jsp程序中,就会在服务器进行翻译时,直接输出到浏览器端,和输出流输出到浏览器端效果相同。

如果是在<%%>中写的内容,会被当做java代码,直接翻译在.java生成的service方法中。所以在这个标签中,写的所有内容必须符合在一个普通java方法中书写的规范。

在<%!%>中的内容,会被翻译到类体中,所以可以用来书写全局变量或者静态代码块,但是需要注意线程安全问题。

<%=%>相当于一个out.print();,在<%=%>标签中写的内容会直接放在out,print(String s),方法的参数中。

<%@page%>指令标签,可以使用可以设置多个变量的值,例如

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

就可以设置响应类型和字符类型。

当然JSP中的语句中还有许多别的属性会常常用到,这里仅列举小部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值