百科狗-知识改变命运!
--

Javaweb技术中Java和JSP有什么关系?

一语惊醒梦中人1年前 (2023-12-20)阅读数 17#综合百科
文章标签程式业务

JSP是传统JavaWeb开发的核心组成部分,主要的作用是构建呈现端(View)。

传统JavaWeb开发方案中还有Servlet和JavaBean,Servlet充当控制器,而JavaBean则充当模型,也就是经典的Model2解决方案。

JSP能做哪些事呢?JSP能做两件事,一件事是做展现,另一件事是做业务处理,传统的Model1解决方案就是采用JSP+JavaBean的方式来实现(这已经是将近20年前的解决方案了),简单的说JSP既能做html的事情,又能做业务调度的事情(Servlet)。虽然建议JSP只做展示层的事情,但是JSP完全能嵌入可执行的Java代码,也就是可以把展示逻辑和业务逻辑整合在一起。也正是因为如此,目前在大型项目中已经很少能看到JSP的影子了。

传统方案的请求流程是当用户请求发送到服务器以后,由Servlet接收用户的请求(提取数据、验证数据、功能匹配等),然后调用JavaBean的业务方法完成业务处理,最终跳转到JSP页面,由JSP页面把结果呈现出来。

这种方式目前只在一些小型的Web开发中还能看到,在一些大型Web开发方案中,已经很少采用JSP了,原因有以下几点:

Javaweb技术中Java和JSP有什么关系?

第一,JSP本质上是Servlet。JSP是要转换成Servlet执行的,这就要求JSP必须在WebContainer中,而WebContainer往往还要负责业务逻辑的处理,这对性能有较大的影响。

第二,动静资源耦合。这是JSP被诟病的一个主要原因,早期是优点,后期就是一个最大的缺点了。

第三,JSP内容多,加载慢。前端工程师还要了解各种JSP标签的使用,往往很容易出错。

目前大型Web开发方案是前端访问直接到达html页面,html页面由单独的服务器处理(比如Nginx),提高了访问的效率,然后由html页面发起接口调用。这样能够完成动静的分类,提高了开发效率,也提高了服务器的稳定性。

当然,对于初学者来说,学习JSP的使用也是没有坏处的,毕竟现在有大量的项目依然在采用JSP作为呈现端。如果项目的并发请求量不高的情况下,采用JSP还是很方便的。

我使用Java编程多年,目前也在带Java开发团队(移动互联、大数据方向),我会陆续在头条写一些关于Java开发方面的文章,感兴趣的朋友可以

JAVASCRIPT 和JSP不同 1,JAVASCRIPT JavaScript 是一种新的描述语言,此一语言可以被箝入 HTML 的文件之中。透过 JavaScript 可以做到回应使用者的需求事件 (如: form 的输入) 而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给伺服端 (server)处理,再传回来的过程,而直接可以被客户端 (client) 的应用程式所处理。你也可以想像成有一个可执行程式在你的客端上执行一样!目前已有一些写好的程式在Internet 上你可以连过去看看,以下有一些计算器的例子,在 Nescape 上。JavaScript 和 Java 很类似,但到底并不一样! Java 是一种比 JavaScript 更复杂许多的程式语言,而 JavaScript 则是相当容易了解的语言。JavaScript 创作者可以不那麽注重程式技巧,所以许多 Java 的特性在 Java Script 中并不支援。 2,JSP JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准, JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。 JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。 在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。 JSP的优点: ·对于用户界面的更新,其实就是由 Web Server进行的,所以给人的感觉更新很快。 ·所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。 ·客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)