问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我们还需要JSP吗?

发布网友 发布时间:2023-09-15 17:33

我来回答

2个回答

热心网友 时间:2024-12-13 04:52

jsp还是需要的,现在很多大型的电商网站都是采用jsp做的,jsp就有以下特点:
1 跨平台
既然JSP是基于Java语言的,那么它就可以使用Java API,所以它也是跨平台的,可以应用在不同的系统中,如Windows、Linux、Mac和Solaris等。这同时也拓宽了JSP可以使用的Web服务器的范围。另外,应用于不同操作系统的数据库也可以为JSP服务,JSP使用JDBC技术操作数据库,从而避免了代码移植导致更换数据库时的代码修改问题。

正是因为跨平台的特性,使得采用JSP技术开发的项目可以不加修改地应用到任何不同的平台上,这也应验了Java语言的"一次编写,到处运行"的特点。

2 业务代码分离
采用JSP技术开发的项目,通常使用HTML语言来设计和格式化静态页面的内容,而使用JSP标签和Java代码片段来实现动态部分。程序开发人员可以将业务处理代码全部放到JavaBean中,或者把业务处理代码交给Servlet、Struts等其他业务控制层来处理,从而实现业务代码从视图层分离。这样JSP页面只负责显示数据即可,当需要修改业务代码时,不会影响JSP页面的代码。

3 组件重用
JSP中可以使用JavaBean编写业务组件,也就是使用一个JavaBean类封装业务处理代码或者作为一个数据存储模型,在JSP页面甚至整个项目中都可以重复使用这个JavaBean。JavaBean也可以应用到其他Java应用程序中,包括桌面应用程序。

4 继承Java Servlet功能
Servlet是JSP出现之前的主要Java Web处理技术。它接受用户请求,在Servlet类中编写所有Java和HTML代码,然后通过输出流把结果页面返回给浏览器。其缺点是:在类中编写HTML代码非常不便,也不利于阅读。使用JSP技术之后,开发Web应用便变得相对简单快捷多了,并且JSP最终要编译成Servlet才能处理用户请求,因此我们说JSP拥有Servlet的所有功能和特性。

5 预编译

预编译就是在用户第一次通过浏览器访问JSP页面时,服务器将对JSP页面代码进行编译,并且仅执行一次编译。编译好的代码将被保存,在用户下一次访问时,直接执行编译好的代码。这样不仅节约了服务器的CPU资源,还大大提升了客户端的访问速度。

热心网友 时间:2024-12-13 04:53

现在JSP不是活的很好吗?为什么会这么说。然而经常使用JSP的人可能会发现,JSP虽然动态地利用Java程序来生成Web前端,但JSP在调试、可视化方面都不尽人意。而且JSP提供了大量另人难以理解的标签。这些也会大大增加JSP的使用难度。在当前Sun之所以在推出Java三年后又弄出个JSP,可能主要是为了对付微软的ASP。事实上,Sun提供了JSP也是无奈之举。当明Servlet规范诞生后不久, Sun发现Servlet并不适合于开发Web程序,因为它并不能象ASP一样将HTML和Java混合在一起(只能用Response.write向客户端输出代码),因此,Sun就想了一个折衷的解决方案,用类似ASP的语法提供一个纯文本的代码页,然后再将其转换成Servlet源代码,最后将其编译成Java二进制代码。从这一点看,JSP就是Sun最初为了迎合Web设计者的需要以及为了和ASP竞争而提供的一个超级补丁,从现在来看,这个补丁已经有点陈旧了。也许Sun应该为Java全新定做一个Web解决方案了。
有很多Java程序员都认为Java是面向对象的最好体现。然而以Java作为主要程序语言的JSP在程序复用性上却和Java大相径庭。在整个J2EE规范中并没有提供一种机制来重用JSP。当然,你也许会说可以使用<jsp:include来实现复用,但用这个标签其他的组件或程序就无法实现对JSP的复用。
MVC模式是现在非常流行的设计模式,然而在JSP中却没有对它直接地支持,在最近发布的JSP2.1规范中也未描述。而要想在JSP中使用MVC模式,就必须要使用第三方的框架,如Struts。在这一点上就不如现在非常流行的Ruby on Rails。RoR的基本原理是约定优于配置。因此,在ROR中使用MVC模式是非常简单的。而在JSP中就需要配置大量的xml文件,并且现在还没有一个非常好的IDE可以支持这些操作。如果你想在自己的Web程序中使用MVC模式,建议可以考虑一下ROR。因为它会使你的工作事半功倍。
现在之所以支持JSP的IDE非常少,除了Java阵营的固有模式,只注重技术本身,而并不注意用户体验外,还有一个重要的原因,就是JSP本身在设计时并未考虑支持IDE。因此,它并不能象ASP.NET一样提供可视化的接口(当然,如果想提供这样的可视接口也不是没办法,只是实现难度要明显大于ASP.NET)。也许这在某种程序上将会影响JSP的发展,毕竟,任何人都希望自己所使用的产品更容易使用。
JSP不仅在服务端的使用不尽如人意,而且对前端技术的支持也不好。如现在非常流行的AJAX技术。要想在JSP中使用这种技术,必须得手工编写大量的代码。这对于规模很大的工程的开发周期会很长。而Sun却一直对这些视而不见。在新推出的JSP规范中迟迟不肯加入对这些新技术的支持。而Rails这一点做的就很好。它不仅全面支持MVC模式,而且提供了很多功能可以直接使用AJAX,而且无需了解任何JavaScript的知识。最近Borland又推出了Delphi for Rails。我想这将大大加速ROR的发展。也许现在很多人更希望Sun也能象这些开源技术学习,更快地在JSP中加入新东西。或者设计出更另人振奋的Web解决方案。但另人遗憾的是Sun只顾按着自己的路线发展,而无视Java社区的呼声。如果Sun仍然这样一意孤行,很可能最后Sun的软件技术只会剩下Java一种了。但愿Sun能趁早醒悟。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
和面的和是什么读音? win10 应用打不开。全都打不开。 进入win10打不开软件 win10电脑软件都打不开是什么原因win10突然软件都打不开软件是怎么回事... 软件打不开怎么办win10电脑点不开软件最简单办法 请问下,离厦门市岛内的台湾路的国联大厦最近的建设银行和农业银行... 从巴黎都市到建设银行怎么坐公交车,最快需要多久 东莞万江官桥窖离建设银行哪路车最近? 建行七支分行有那些公交车经过 佛山哪里有飞越丛林拓展 身份证户口本上的出生日期可以改吗??因为当时时兴早上学 把我... 制作简历时,有很多年工作经验了还需要写教育经历吗? 赞美“炒菜”的词语有哪些?12 赞美厨师的词语184 同一张身份证绑定的两个,有一个显示零钱支付超过10万被限制了... 司马懿和司马微的关系31 WOW费伍德森林里的铁木洞在哪里啊? 魔兽世界铁木山洞在哪 玄宗回马杨妃死,云雨难忘日月新指什么动物 深度揭秘水镜先生和司马懿是什么关系43 42、《马嵬坡》 郑畋·唐玄宗回马杨妃死,云雨难忘日月新。终... 在《三国演义》中,司马懿和司马徽究竟是什么关系? 想问下哈尔滨宜信公司具体位置在哪里?公司地址? 各位知道这是什么鸟的蛋? 河北省人事考试网怎么报名3 河北省人事考试网网上报名为什么登录不上去3 三国里面司马徽和司马懿什么关系?两个人都姓司马?6 《念奴娇 赤壁怀古》是怎样结合写景来抒发自己的情感的1 现在投一份简历中还需要贴上个人照片吗? 《念奴娇·赤壁怀古》抒发了作者怎样的思想感情?15 档案和身份证的出生日期不一样,怎样改?1 原来河南的成人高考的上课方式是可以选择的? 《念奴娇·赤壁怀古》作者是如何将写景、咏史和言志相结合来抒发...2 英雄联盟极地大乱斗那两个小可爱是什么动物?为什么老跟着我,是... 英雄联盟中的极地大乱斗中的那只宠物有什么用?20 这是什么鸟的蛋,我想知道看着挺吓人的1 Ol&#39; &#39;55 (Lp Version) 歌词 求sarah mclachlan《angel》的歌词中文翻译...518 angel sarah mclachlan歌词翻译讲解393 SARAH MCLACHLAN的《Witness》 歌词 早几年身份证和户口本出生日期搞错了,现在办养老保险能改过来吗...6 身份证和户口本上的出生日期都错了应该怎么改?需要什么手续?需...120 身份证跟户口本上的年龄都错了,能改吗?怎么改?468 听说最近华硕在上海发布会上展出了一款名叫风行go的电竞耳机,有人用过... 身上这两天长了很多小红点,怎么回事?在腰部!前面后面都有! 如何在河北省人事考试网上查询通过审核的人数?10 lol的极地大乱斗中的那只宠物有什么用?8 LOL英雄联盟极地大乱斗,这玩意儿是啥?64 “始于悲者终于欢,始于离者终于合,始于困者终于亨”是什么意思...4 lol极地大乱斗饼干有什么用303