通俗易懂的说一下JSP和Servlet有什么区别

 我来答
育知同创教育
2017-04-06 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
JSP于Servlet区别于联系如下:
【1】JSP第一次运行的时候会编译成Servlet,驻留在内存中以供调用。
【2】JSP是web开发技术,Servlet是服务器端运用的 小程序,我们访问一个JSP页面时,服务器会将这个JSP页面转变成Servlet 小程序运行得到结果后,反馈给用户端的浏览器。
【3】Servlet相当于一个控制层再去调用相应的JavaBean处理数据,最后把结果返回给JSP。 【4】Servlet主要用于转向,将请求转向到相应的JSP页面。
【5】JSP更多的是进行页面显示,Servlet更多的是处理业务,即JSP是页面,Servlet是实现JSP的方法。
【6】Servlet可以实现JSP的所有功能,但由于美工使用Servlet做界面非常困难,后来开发了JSP。
【7】JSP技术开发网站的两种模式:JSP + JavaBean;JSP + Servlet + JavaBean(一般在多层应用中, JSP主要用作表现层,而Servlet则用作控制层,因为在JSP中放太多的代码不利于维护,而把这留给Servlet来实现,而大量的重复代码写在JavaBean中)。
【8】二者之间的差别就是,开发界面是JSP直接可以编写。 比如在JSP中写Table标记:[数据]; Servlet需要加入:out.println(“[数据]”)。 JSP文件在被应用服务器(例如:Tomcat、Resin、Weblogic和Websphere),调用过之后,就被编译成为了Servlet文件。也就是说在网页上显示的其实是Servlet文件。Tomcat下面JSP文件编译之后生成的Servlet文件被放在了work文件夹下,JSP中的HTML代码在Servlet都被out出来,而JSP代码按照标签的不同会放在不同的位置。
【9】JSP中嵌入JAVA代码,而Servlet中嵌入HTML代码。
【10】在一个标准的MVC架构中,Servlet作为Controller接受用户请求并转发给相应的Action处理,JSP作为View主要用来产生动态页面,EJB作为Model实现你的业务代码。
陷漠砂
2017-04-06 · TA获得超过621个赞
知道小有建树答主
回答量:315
采纳率:100%
帮助的人:182万
展开全部
JSP主要负责显示页面和接收用户传递的信息。Servlet主要负责页面与业务层的信息交互。
举个简单的例子。
假如我们的项目是一个小饭馆,面积不超过50平米的那种,那JSP就是服务员,Servlet就是一个厨房前台。
JSP负责上菜和接收客人的点菜单,它并不知道菜是怎么做出来的,它也不知道客人的点菜单应该交给哪个厨师去做,它只管把点菜单交给前台,然后再从前台那里拿菜然后送到客人桌子上。
而Servlet拿到了JSP的点菜单,一看,这有个粤菜,然后就进去厨房叫广东的厨师做,再一看,这有个川菜,然后又跑去叫四川的厨师做,然后厨师做好了他就把菜放在前台招呼JSP过来拿,Servlet并不知道这个菜具体是用的什么材料、用的什么烹饪手法、具体要端给哪个客人,它只知道拿到点菜单后该去找哪个厨师做。
总结来说,JSP就只负责给用户呈现信息和把用户的请求信息交给Servlet,其他的一概跟它没关系。Servlet就只负责把信息传递给业务层,然后接收到反馈的信息后让JSP取走,其他的事情它也是一点都不管。
当然,这只是个简单的小例子,可能你会有疑问,那Service和Dao是什么?这是因为我们这是个小饭馆,也就相当于一个小项目,Service和Dao在这里体现不出来。但是如果有朝一日这个饭馆做大了做成高档酒店了,那时候Service和Dao的作用才能体现出来。不过这个小例子已经足够说明JSP和Servlet的区别了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DorothyLX96
2018-03-30 · TA获得超过5073个赞
知道小有建树答主
回答量:50
采纳率:100%
帮助的人:6417
展开全部
  1. jsp经编译后就变成了Servlet.(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)

  2. jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.

  3. Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到.

  4. Jsp是Servlet的一种简化,使用Jsp只需要完成程序员需要输出到客户端的内容,Jsp中的Java脚本如何镶嵌到一个类中,由Jsp容器完成。而Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。

  1. JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1]  是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

  2. Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,主要功能在于交互式地浏览和修改数据,生成动态Web内容。

参考资料

百度.百度[引用时间2017-12-29]

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式