Java EE基础(16):JSP概念 + 简单使用




前言

我们在学习Servlet技术后,我们都时用Servlet进行页面的展示。如:学Cookie时做的案例,全是Java代码字符串拼接起来的页面。

Java EE基础(13):Cookie三天免登录案例(附源码) 中的登录页面的展示。
(这还是单纯的html代码,没有加CSS和JS代码)

我们发现使用上面Java代码进行页面书写太影响效率了。那么有没有什么方式,可以让我们可以像之前写网页代码一样的呢。

答案是:使用JSP技术

一、JSP

1.概念

JSP(全称Java Server Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

JSP全称Java Server Pages,简单理解:他可以用于写HTML页面,是以.jsp结尾的文件。

每一个JSP 本质上是一个Servlet,就和之前写的Servlet是一样的。只不过他简化了Servlet。

2.作用

JSP出现是为了代替Servlet输出HTML代码。

你如果使用Servlet输出HTML代码会很麻烦,如果你再加上CSS和JS代码,再使用Servlet就会很困难了。

所以说,JSP的出现是为了简化Servlet,代替Servlet输出HTML代码。

3.优点

(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP的局限性JSP的优势是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
(5)支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVA BEANS 组件来实现复杂商务功能。

总结下:

  • 跨平台
  • 可伸缩性强
  • 有多样化和功能强大的开发工具支持。

二、JSP简单使用

1.创建jsp文件

新建一个动态web项目 - 在WebContent(或WebRoot)目录下右键,新建一个JSP File,命名 first.jsp
创建好的JSP文件长这样。除了<% %>(我后面会讲到),其他的就和html代码一样了。

修改里面的编码格式,将ISO-8859-1编码改为UTF-8(不改会乱码)。顺便加上一句话

2.部署运行

tomcat部署运行(部署配置好项目访问路径)

访问成功!
在这里插入图片描述

三、JSP运行原理

1.原理

你启动了Tomcat服务器,在浏览器中(输入URL)访问Tomcat服务器中访问的任何资源都是在访问Servlet。我在上面JSP概念中提到,JSP本质上是一个Servlet,为什么说JSP本质是Servlet呢?

Tomcat的管方文档中我们可以看到HttpJspBase是继承HttpServlet。
因为JSP继承了HttpJspBase,所以JSP也是一个Servlet
在这里插入图片描述

其实JSP在第一次被访问的时候会被编译为一个继承了HttpJspBase类(该类是HttpServlet的一个子类)。
所以说JSP本质是一个Servlet
(如果你像看被编译后的jsp文件,请看下面)

2.如何查看

在这里插入图片描述
打开你的tomcat,如果你这里没有特别设置过。那么路径为:当前项目位置.metadata.plugins\org.eclipse.wst.server.core\tmp2\work\Catalina\localhost\demo-jsp\org\apache\jsp

例如:我的项目位置是(当前项目位置.metadata.plugins\org.eclipse.wst.server.core\tmp2\work\Catalina\localhost\demo-jsp\org\apache\jsp)。

如果你找不到目录请参考:【问题】Eclipse中集成的Tomcat部署项目,Tomcat中没有项目文件问题解决

这就是我们刚刚创建的jsp文件,被编译后的.class文件。还有一个生成的.java文件。

打开后可以看到:

总结

我们知道了JSP本质上是一个Servlet。同时我们也会JSP的简单使用,接下来将会对JSP相关的知识点进行总结。

相关

更多Java EE基础的 Servlet与JSP相关 请点击:【Servlet + JSP】 目录

发布了114 篇原创文章 · 获赞 127 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_44034328/article/details/104113530