认识一下什么是JSP
摘要:JSP,全称是Java Server Pages,即Java服务器页面,是由Sun Microsystems公司主导创建的一种动态网页技术标准。
本文分享自华为云社区《Java服务器页面-JSP是什么与其简单结构介绍》,作者: gentle_zhou。
JSP,全称是Java Server Pages,即Java服务器页面,是由Sun Microsystems公司主导创建的一种动态网页技术标准。同时,JSP是一种运行在服务端的Java servlet(Server Applet,小服务程序)。
JSP以JAVA语言作为脚本,为整个JAVA编写的服务器提供了一个服务于HTTP网页的接口,可以动态生成HTML、XML 或其他格式文档的Web网页。
为什么使用JSP
使用JSP技术来编写HTTP网页的优势有如下几点:
- 性能优越,因为JSP可以直接在HTML网页中动态嵌入元素
- 服务器可以直接调用已经编译好的JSP文件,而不需要先载入解释器和目标脚本再编译
- JSP可以调用各种Java里的API接口
- JSP网页页面可以和处理业务逻辑的小服务程序一起使用
- JSP是Java EE(Enterprise Edition,企业级版本)重要的一部分,是一个完整的企业级应用平台
JSP需要什么开发环境
- JDK,是Java Development Kit,是Java的软件开发工具包。
官方下载链接:https://www.oracle.com/java/technologies/downloads/ - Tomcat,一款支持运行 JSP 和 Servlets 的web服务器,可以集成在 Apache Web Server 中。
Apache Tomcat 作为开源软件,下载链接:http://tomcat.apache.org/
Tomcat 官网链接:http://tomcat.apache.org - CLASSPATH 环境变量。由于 servlets 不是 Java SE(Standard Edition,Java 标准版,Java技术的核心和基础)的一部分,所以开发人员必须标示出 servlet 类的编译器。
如果我们用的是 Windows 机器,需要在 C:\autoexec.bat 文件中添加以下两行:set CATALINA=C:\apache-tomcat-[版本号]
set CLASSPATH=%CATALINA%\common\lib\jsp-api.jar;%CLASSPATH%
如果是在 Linux/Unix 机器下,我们则需要在 .cshrc 文件中添加以下两行:setenv CATALINA=/usr/local/apache-tomcat-[版本号]
setenv CLASSPATH $CATALINA/common/lib/jsp-api.jar:$CLASSPATH
注:如果开发路径是 C:\JSPDev (Windows)或者 /usr/JSPDev (Linux/Unix),那么w我们就需要将这些路径添加进 CLASSPATH 变量中。
JSP结构
服务器上的JSP页面都会由JSP容器/引擎来负责处理。
JSP 容器会与 Web 服务器协同合作,为JSP正常运行提供必需的运行环境和服务;JSP容器还会正确识别专属于JSP网页的特殊元素(标签通常以<%开头,以%>结束)。
如下图所示是一个典型的支持JSP的网络服务器与客户端交互的图片,左边是代表客户端的机器(macos,linux,windows系统),中间用户通过互联网连接到我们右边的网络服务器,网络服务器里则有JSP容器/引擎(里面会包含JSP文件),然后服务器会和数据库进行交互:
参考链接
认识一下什么是JSP的更多相关文章
- myeclipse学习总结一(在MyEclipse中设置生成jsp页面时默认编码为utf-8编码)
1.每次我们在MyEclispe中创建Jsp页面,生成的Jsp页面的默认编码是"ISO-8859-1".在这种情况下,当我们在页面中编写的内容存在中文的时候,就无法进行保存.如下图 ...
- jsp前端实现分页代码
前端需要订一page类包装,其参数为 private Integer pageSize=10; //每页记录条数=10 private Integer totalCount; //总记录条数 priv ...
- jsp中出现onclick函数提示Cannot return from outside a function or method
在使用Myeclipse10部署完项目后,原先不出错的项目,会有红色的叉叉,JSP页面会提示onclick函数错误 Cannot return from outside a function or m ...
- jsp页面无法识别el表达式的解决方案
今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...
- 浅谈JSP中include指令与include动作标识的区别
JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...
- 浅谈JSP注释
HTML注释 JSP文件是由HTML尿急和嵌入的Java程序片段组成的,所以在HTML中的注释同样可以在JSP文件中使用.注释格式:<!--注释内容--> <!-- 欢迎提示信息! ...
- JSP 标准标签库(JSTL)
JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...
- Nginx服务器之Nginx与tomcat结合访问jsp
本文使用linux centos系统 本文概述: JSP是一种动态网页技术标准.使用的方式是在HTML文件中插入程序段和JSP标记,而形成JSP文件.使用JSP开发WEB应用可以跨平台开发.但jsp需 ...
- 基于jsp+servlet图书管理系统之后台万能模板
前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...
- JSP页面跳转的几种实现方法
使用href超链接标记 客户端跳转 使用JavaScript 客户端跳转 提交表单 客户端跳转 使用response ...
随机推荐
- 常见的JVM 面试题
1.讲一讲JVM的跨平台与跨语言 跨平台 我们写的一个类,在不同的操作系统上(Linux.windows.Mac OS)执行,效果是一样的.这就是JVM的跨平台性. 跨语言 JVM只识别字节码,JVM ...
- 带码农《手写Mybatis》进度3:实现映射器的注册和使用
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获!
- 搭建springboot集成mybatis
1.new project创建新项目选择spring initializr: 2.选择依赖需要选择web.mybatis.mysql就够了,后续需要其他的直接pom引入依赖就好了: 3.自己在java ...
- Java学习day22
今天跟着视频学习了JScroll面板,图片按钮以及单多选框 这是一个图片按钮程序 很多网站还有软件的图标兼容按钮的功能,如果只有button是无法实现该功能的这时候就需要使用到图标按钮 文本框没有办法 ...
- python的字典及相关操作
一.什么是字典 字典是Python中最强大的数据类型之一,也是Python语言中唯一的映射类型.映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希 ...
- Apache Doris ODBC外表之Postgresql使用指南
Apache Doris 社区 2022 年的总体规划,包括待开展或已开展.以及已完成但需要持续优化的功能.文档.社区建设等多方面,我们期待有更多的小伙伴参与进来讨论.同时也希望多多关注Doris,给 ...
- XCTF练习题---MISC---pdf
XCTF练习题---CRYPTO---混合编码解析 flag:flag{security_through_obscurity} 解题步骤: 1.观察题目,下载附件 2.根据题目提示,下载文件,发现是一 ...
- tuandui last
组长博客链接### 组长博客 参考邹欣老师的问题模板进行总结思考### 设想和目标(2分)#### 1.我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 解决的问题 ...
- Windows Terminal无法加载WSL [process exited with code 4294967295 (0xffffffff)]
在Windows Terminal中WSL无法打开错误代码是 process exited with code 4294967295 (0xffffffff),但在命令行中 通过 "C:\W ...
- Redis GEO 地理位置
目录 GEO指令 GEOADD GEODIST GEOPOP GEOHASH GEORADIUS GEORADIUSBYMEMBER 指令补充 删除操作 避免单集合数量过多 存储原理 GEOADD存储 ...