竹笋

首页 » 问答 » 环境 » JSP一种动态网页技术标准上
TUhjnbcbe - 2023/1/11 20:59:00
北京哪个医院看白癜风好 https://wapjbk.39.net/yiyuanfengcai/yyjs_bjzkbdfyy/

JSP(全称JavaServerPages)是由SunMicrosystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。

JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

JSP将Java代码和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。JSP引入了被称为“JSP动作”的XML标签,用来调用内建功能。

另外,可以创建JSP标签库,然后像使用标准HTML或XML标签一样使用它们。标签库能增强功能和服务器性能,而且不受跨平台问题的限制。

超实用性的Python零基础入门到进阶视频源码淘宝¥2购买已下架

JSP文件在运行时会被其编译器转换成更原始的Servlet代码。JSP编译器可以把JSP文件编译成用Java代码写的Servlet,然后再由Java编译器来编译成能快速执行的二进制机器码,也可以直接编译成二进制码。

特点:

能以模板化的方式简单、高效地添加动态网页内容。

可利用JavaBean和标签库技术复用常用的功能代码(设计好的组件容易实现重复利用,减少重复劳动)。标签库不仅带有通用的内置标签(JSTL),而且支持可扩展功能的自定义标签。

有良好的工具支持。

继承了Java语言的相对易用性。

继承了Java的跨平台优势,实现“一次编写,处处运行”。因为支持Java及其相关技术的开发平台多,网站开发人员可以选择在最适合自己的系统平台上进行JSP开发;不同环境下开发的JSP项目,在所有客户端上都能顺利访问。

页面中的动(控制变动内容的部分)/静(内容不需变动的部分)区域以分散但又有序的形式组合在一起,能使人更直观地看出页面代码的整体结构,也使得设计页面效果和程序逻辑这2部分工作容易分离(外观视图与逻辑分离)。从而方便分配人员并发挥各自长处,实现高效地分工合作。

可与其它企业级Java技术相互配合。JSP可以只专门负责页面中的数据呈现,实现分层开发。

JSP2.0中的一个主要功能是JSPfragment,它的基本特点是可以使处理JSP的容器推迟评估JSP标记属性。我们知道一般JSP是首先评估JSP标记的属性,然后在处理JSP标记时使用这些属性,而JSPfragment提供了动态的属性。也就是说,这些属性在JSP处理其标记体时是可以被改变的。

JSP需要将这样的属性定义为javax.servlet.jsp.tagext.JspFragment类型。当JSP标记设置成这种形式时,这种标记属性实际上的处理方法类似于标记体。在实现标记的程序中,标记属性可以被反复评估多次。

这种用法称为JSPfragment。JSPfragment还可以定义在一个SimpleTag处理程序中使用的自制标记动作。

像前面例子说明的,getJspBody返回一个JspFragment对象并可以在doTag方法中多次使用。需要注意的是,使用JSPfragment的JSP只能有一般的文本和JSPaction,不能有scriptlet和scriptlet表达式。

静态数据在输入文件中的内容和输出给HTTP响应的内容完全一致。此时,该JSP输入文件会是一个没有内嵌JAVA或动作的HTML页面。而且,客户端每次请求都会得到相同的响应内容。

JSP指令控制JSP编译器如何去生成servlet,以下是可用的指令:

包含指令include–包含指令通知JSP编译器把另外一个文件完全包含入当前文件中。效果就好像被包含文件的内容直接被粘贴到当前文件中一样。这个功能和C预处理器所提供的很类似。被包含文件的扩展名一般都是jspf(即JSPFragment,JSP碎片):

%

includefile=somefile.jsp%

页面指令page–页面指令有以下几个选项:

import

使一个JAVA导入声明被插入到最终页面文件。

contentType

处理HTTP请求时,如果出现异常则显示该错误提示信息页面。

isErrorPage

注意:在同一个JSP文件中只有import导入页面指令可以被多次使用。

标签库指令taglib–标签库指令描述了要使用的JSP标签库。该指令需要指定一个前缀prefix(和C++的命名空间很类似)和标签库的描述URI:

%

taglibprefix=myprefixuri=taglib/mytag.tld%

1
查看完整版本: JSP一种动态网页技术标准上