【JSP技术】web杂谈(2)之JSP是什么?

news2024/11/17 14:35:52

涉及知识点

什么是JSP,JSP的特点,JSP的未来趋势,JSP的应用范例。深入了解JSP技术。
原创于:CSDN博主-《拄杖盲学轻声码》,更多内容可去其主页关注下哈,不胜感激


文章目录

  • 涉及知识点
  • 前言
  • 1.什么是JSP
  • 2.JSP的特点
    • 1)内容的生成和显示进行分离
    • 2)强调可重用的组件
    • 3)采用标识简化页面开发
    • 4)健壮性与安全性
    • 5)良好的移植性
    • 6)企业级的扩展性和性能
  • 3.JSP程序页面
  • 4.JSP技术的未来
  • 涨薪支持区


前言

更多考试总结可关注CSDN博主-《拄杖盲学轻声码》

1.什么是JSP

服务器动态网页(JSP,JavaServerPages)是由Sun公司(SunMicrosystemsInc)倡导,许多公司参与一起建立的一种动态网页技术标准,其在动态网页的建设中有其强大而特别的功能。目前在国外的众多网站特别是涉及电子商务的网站中,已经大量使用了JSP技术。
JSP技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。
所谓语JSP网页(.jsp),就是在传统的网页HTML文件(.htm、*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag)而构成的。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段;,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plug-in、无ActiveX、无JavaApplet,甚至于无Frame。
在Sun正式发布JSP之后,这种新的Web应用开发技术很快引起了人们的关注。JSP为创
建高度动态的Web应用提供了一个独特的开发环境。

2.JSP的特点

JSP能在WebServer(尤其是JSWDK)端整合Java语言至HTML网页的环境中,然后利用HTML网页内含的Java程序代码取代原有的CGI、ISAPI或者IDC的程序,以便扩行原有CGI/WinCGI、ISAPI的功能。
JSP的运作模式。相对于Client端(指的是浏览器端的HTML文件)内嵌的描述语言,Sun公司提供的JSWDK也支持类似的描述语言,它便是Java语言。由于JSP放置在Web服务器上,它在解析使用者由表单(FM)传送过来的字段数据后,接着通过适当的逻辑生成HTML文件,然后传给客户端,使用者看到的是一般符合HTML格式的文件内容因为JSP是在JSWDK上执行的,所以无论使用的是哪一种平台下的浏览器,皆能看到上JSP产生的网页内容。
JSP与ASP、PHP相比有下列优点。

1)内容的生成和显示进行分离

使用JSP技术,Web页面开发人中可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例如请求账户信息或者特定的一瓶酒的价格)。生成内容的逻辑被封装在标识和JavaBean组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和JavaBean中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP磁面,而不影响内容的生成。
在服务器端,JSP引擎解释JSP标识和上脚本,生成所请求的内容(例如,通过访问JavaBean组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。

2)强调可重用的组件

绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBean或才EnterpriseJavabeanTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。

3)采用标识简化页面开发

JavaServerPage技术封了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容的生成所需要的。标准的JSP标识能够访问和实例化JavaBean组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。
通过开发定制标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库,这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。
JSP技术很容易整合到多种应用体系结构中,利用现存的工具和技巧,扩展到能够支持企
业级的分布式应用。作为采用java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。

4)健壮性与安全性

由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP磁面都被编译成为JavaServerlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全习性。

5)良好的移植性

作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,可以使用所选择的服务器和工具,而且更改服务器或工具并不影响当前的应用。

6)企业级的扩展性和性能

当与Java2平台,企业版(J2EE)和EnterpriseJavaBean技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。

3.JSP程序页面

下面是JSP的一个例子,完成打印年、月的日期,并且根据时间使用"GoodMorning"和"GoodAfternoon"表示欢迎。

<HTML>
<%@pagelanguage=="java"inports=="com.wombat.JSP.*"%>
<HI>Welcome</HI>

<P>Todayis</P>
<jsp:useBeanid=="clock"class=="calendar.jspCalendar">
<UL>
<LI>Day:<%==clock.getDayOfMonth()%>
<LI>Year:<%==clock.getYear()%>
</UL>

<%if(Calendar.getInstance().get(Calendar.AM_PM)===Calendar.AM){%>GoodMorning
<%}else{%>GoodAfternoon
<%}%>
<%@includefle=="copyright.html"%>
</HTML>

这个页面包含下面这些组件:
(1)一个JSP指示将信息传送到JSP引擎。在这个示例中,第一行指出从该页面即将访问的一些Java编程语言的扩展的位置。指示被设置在<%@和%>标记中。
(2)固定模板数据。所有JSP引擎不能识别的标识将随结果页面发送。通常,这些标识是HTML或者XML标识,在上面的例子中包括无序列表(UL)和HI标识。
(3)JSP动作或者标识。这些通常作为标准或定制标识被实现,并且具有XML标识的语法。在这个例子中,jsp:useBean标识实例化服务器端的ClockJavaBean。
(4)一个表达式。JSP引擎计算在<%@==和%>标记间的所有东西。在上面的列表项中,时钟组件(Clock)的Day和Year属性值作为字符串返回,并且作为输出插入到JSP文件中。在上面的例子中,第一个列表项是日子,第二个是年份。
小脚本是执行不为标识所支持的功能或者将所有的东西捆绑在一起的小的脚本。在上面示例中的小脚本确定现在是上午还是下午,并且据此来欢迎用户。
基于Java的小脚本提供了一种灵活的方式以执行其他功能,而不是要求扩展的脚本语言。页面作为整体是可读和可理解的,这就使得查找或者预防问题以及共享工作更加容易。

4.JSP技术的未来

JSP技术被设计为一个开放的,可扩展的建立动态Web页在的标准。开发人员可以使用JSP页面来创建可移植的Web应用,在不同的Web和应用服务器上为不同的场合所运行,而不论采用什么适合本身场合和需要的创建工具。
通过与业界领袖的合作,Sun保证JSP规范是开放的和可移植的。可以使用任何客户机和服务器平台,在任何地方编写和部署它们。将来,工具供应商和其他厂商将通过为专门的功能提供客户化的标识库而扩展平台的功能。

涨薪支持区

期待大家能通过这篇文章学到更多,而且薪资一年更比一年猛!
喜欢博主的话可以上榜一探究竟,博主专设涨薪皇榜给大家查阅,喜欢的可以点击此处查看哟。
在这里插入图片描述


#总结
更多备考资料大家可以关注csdn博主-《拄杖盲学轻声码》

以上就是今天要讲的内容,本文主要介绍了什么是JSP,JSP技术的实际应用,也期待大家分享更多,帅哥美女们给个赞呗,2023年一起加油!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/692394.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Webpack和Vite简单使用

目录 WebPack 介绍 基础使用 初始化使用 webpack.config.js文件 webpack开发服务器 vite 介绍 使用 使用vite创建vue框架项目 WebPack 介绍 当我们习惯了在node中编写代码的方式后,在回到前端编写html、css、js这些东西会感觉到各种的不便。比如: 不能放心…

九、ElasticSearch 运维 -集群维度

1. 查看集群健康 用于简单的判断集群的健康状态,集群内的分片的分配迁移情况。 GET _cluster/health-------------------------Respond----------------------------- {"cluster_name" : "test-jie","status" : "green",…

使用数组的方式计算---任意给出一个年,月,日,判断出这是一年的第几天

任意给出一个年,月,日,判断出这是一年的第几天; 闰年算法:能被4整除且不能被100整除,或者能被400整除 如2015年 5 10 是这一年的第131天 使用数组的方式计算,将每个月的天数放在一个数…

蜂网互联 企业级路由器v4.31 密码泄露漏洞

漏洞描述 蜂网互联企业级路由器v4.31存在接口未授权访问,导致攻击者可以是通过此漏洞得到路由器账号密码接管路由器 漏洞影响 蜂网互联企业级路由器v4.31 网络测绘 app“蜂网互联-互联企业级路由器” 漏洞复现 payload http://ip:port/action/usermanager.ht…

c++ 杂食记

1. inline关键字 在C中,inline关键字用于指定函数应该被内联。 当一个函数被内联时,它的代码将直接插入到调用该函数的代码中,而不是作为单独的函数调用 这可以提高程序的性能,因为它减少了函数调用的开销,并提高了数…

计算机网络那些事之 MTU 篇

哈喽大家好,我是咸鱼 今天我们来聊聊计算机网络中的 MTU (Maximum Transmission Unit) 什么是 MTU ? MTU(Maximum Transmission Unit)是指数据链路层中的最大传输单元 通俗点来讲,MTU 是指数据链路层能…

基于workerman 即时通讯聊天(uniapp + pc)

laychat workerman 实现 webIM即时通讯系统 下载 laychat-master.zip https://github.com/hszyh/laychat 实现了功能: 1、通过snake后台实现对聊天成员的增删改查,动态推送给在线的用户 2、实现了群组的查找 3、实现了创建我的群组,删除我的群组,添加群组成员…

性能测试工具——LoadRunner内部介绍以及常见问题

目录 Tools Recording Options General Options 注释脚本 Review log Runtime-Settings General Network Browser Internet Protocol HTTPS证书 总结: Tools Recording Options 接下来我们挨个看一下里面的东东以及区别 General(通常的&am…

【Python编程】将格式为ppm和pgm的图片批量转换为png或jpg格式的图片

前序 如果文件夹中有异常图片,则可以使用以下代码从而跳过这些异常图片而不影响转换代码的运行。例如本人在解压时中断而导致的图片异常问题,图片示例如下: from PIL import ImageFile ImageFile.LOAD_TRUNCATED_IMAGES True正文 导入用…

Golang学习日志 ━━ gin-vue-admin插件开发记录

gin-vue-admin是一套国人用golang开发的后台管理系统,本文记录插件开发内容。 官网:https://www.gin-vue-admin.com/ 学习视频:https://www.bilibili.com/video/BV1kv4y1g7nT/ 插件目录 后端位置:\server\plugin\ 前端位置&#…

信号与系统复习笔记——采样与通讯系统

信号与系统复习笔记——采样与通讯系统 采样定理 冲激串采样函数可表示为: p ( t ) ∑ n − ∞ ∞ δ ( t − n T ) p(t) \sum_{n-\infty}^{\infty} \delta(t - nT) p(t)n−∞∑∞​δ(t−nT) 周期 T T T 称为采样周期,而 ω s 1 T \omega_s …

7月29-31日·相约上海丨上海国际智能遮阳与建筑节能展览会即将举办

上海国际智能遮阳与建筑节能展览会(ISSE)即将盛大召开。这个七月,期待您的参与,一同共聚盛会! 1、关于展会 国内建筑遮阳市场尚在快速发展期,随着社会经济的发展以及建筑节能环保概念的不断深入&#xff…

开发的功能不都是经过上线测试,为什么上线后还会那么多 Bug ?

你是否也经过这样的灵魂拷问:「开发的功能不都是经过上线测试的吗?为什么上线后还会那么多 Bug ?」。 大家明明都很努力,为什么「输出」的结果没有更进一步?今天我们就水一水这个「狗血」话题,究竟是谁个锅…

一半以上的年轻人存款不足10万元,能带给我们什么思考?

目录 年轻人存款现状现在的年轻人真的没有存款意愿吗?为什么年轻人存款少?收入低,臣妾做不到啊生活成本高消费观念不同超前消费、过度负债存款意识弱 依据自身情况聊聊你的目前的存款在哪一个区间?你觉得存款难吗?谈谈…

Open62541 NodeSet loader 编译与使用

大多数的OPC UA 建模工具通常是将NodeSet 编译成为C 或者C# 的源代码,然后和Server 程序一起编译。比如uaModeler,Opc foundation 的UA ModelCompiler 以及Open62541 提供的nodeset_Compiler 都是如此,这种方式在载入配套规范的Nodeset 无疑是…

使用Jenkins构建发布一个简单的maven项目

上一章,完成了jenkins在ubuntu上的安装,这一章将使用单个Jenkins服务完成一个maven项目的打包和发布。 1、在Jenkins的管理页面中安装相关插件 用到的插件有:Maven Integration、Git、Publish Over SSH三个,在Dashboard -> M…

全国水系与流域(五级)矢量数据下载

1. 全国水系与流域(五级)矢量数据 全国共计3040条水系,4015个流域 全国水系与流域(五级)矢量数据 链接 解压密码:rserforum.com 说明:“流域等级划分包括1-5级,其中1-2级为一级支流…

从零开始理解Linux中断架构(12)--硬中断之中断控制器(GICV3)

前面我们搞清楚了elx_irq的外围部分,了解清楚了kernel_enter/kernel_exit大致的作用。本节我们进入到硬中断处理部分。硬中断处理程序的位置见下图: 硬中断处理主要的工作就是判断中断发起源,应答中断控制器,根据中断源查询出并调用该中断源的设备级处理函数。 前面…

pcl matlab 计算平面与空间三角形的交线

一、生成一个平面 过程: 单有法向量不能确定一个平面,至少还要有平面上的一个点的坐标才行 假如知道法向量n(A,B,C) 而平面过某点M(x0,y0,z0) 那么平面的方程为 A(x-x0)B(y-y0)C(z-z0)0 要在图中画出来,那么先要给x,y一个范围 举个离子&#…

Appuploader:常见错误及解决方法指南

目录 前言 一.登录apple官网,注册账号 二.下载Appuploader和登录 三.bundle ID 四.设备管理 五.证书管理 六.描述文件管理 七.打包 八.安装测试 (PS:第一次安装成功会显示不受信任,进入设置-通 安全性”界面&#xff0c…