关闭

[读书笔记]J2EE 基本概念 --- JSP

标签: jsp读书servletsservlet服务器html
857人阅读 评论(0) 收藏 举报
分类:

JSP技术是用来解决如下问题的:

1.      表现层(presentation,即页面)经常发生变化。而这些变化和应用逻辑(Application Logic)无关,即完全重新编译(recompilation and rebuild)是不必要的。

2.      表现层调试困难。除非运行,才可以知道代码是否有错误。

3.      在多数大型组织中,表现层开发者(presentation developer)和后台开发者(Software developer)是不同的人,这就要求表现层开发者懂得后台使用的语言,以便开发表现层,而许多专门的表现层开发工具也因而变得不能使用。

 

JSP技术简介

Servlets一样,JSP是也是一种J2EEWeb组件。JSP和服务器端脚本技术不同的是,JSP需要被编译(compiled),而服务器端脚本是被翻译的(interpreted)

JSP包括结构化文档(通常是HTML),以及内嵌在其中的java代码。当一个JSP页面被请求的时候,服务器会运行其中的java代码,并把运行结果和静态代码一起返回给发出请求的客户端。

这种想法的目的是,使用标记语言(HTML)来显示页面中的静态内容,内嵌特殊标记(tag)来标记动态内容。服务器会处理这些特殊标记中的代码,并返回处理结果。

 

JSP的典型应用

JSP具有和Servlets同样的能力,即后者能做的事,前者都能做到,反之亦然。

正确的使用二者的方式是:

 使用JSP来显示动态页面内容,而在逻辑处理更重要的地方使用Servlets

(原文: The idea is to leverage the JSP for presentation-centric tasks and utilize the servlets where logic is paramount.)

在有动态内容需要显示给客户看的时候,使用JSP是非常合适的。

总之,JSP的主要用途是用来做显示(presentation)工作,内嵌的Java代码主要是用来和Servlet或者是其他的控制器,数据实体等进行通信。

JSP是需要消耗系统资源的,所以如果只有静态代码就足够了,那么就不要使用JSP。在这种情况下,应当使用一个普通的HTML页面。

 

架构模式:Model1 Model2

Model1:这种架构把页面表现和商业逻辑处理都放在了JSP中。优点是简单并易于实现。缺点是代码会变得越来越庞大,并且难于维护和升级。

Model2:现在大多数开发都使用这种架构。这种架构遵循MVC(Model-View-Controller)模型。在这个模型中,ModelJavabean来实现,它主要是用来存储数据的;JSP被用来从Javabean中取得需要显示的数据显示在页面中(View)Servlets来处理来自客户端的请求,并且把处理结果储存在Javabean(Controller)

使用时机:

Model1:创建简单的,没有复杂逻辑处理的Web应用时使用。

Model2:需要对请求进行扩展处理,并且可能返回多个响应的时候使用Model2

总之,最适合的才是最好的。

JSP VS Servlets

所有的JSP都被编译成Servlets,然后再Servlet容器中运行。所以,从技术角度讲,JSPServlets在能力和用途方面是相似的。

JSP优于Servlets的方面有:

n         JSP是以显示为主要用途,给Web显示层开发者提供了一种更加自然的开发模型。

n         JSP使得“把表示和内容分开”的目的能够实现。这意味着,项目表示层的开发可以和逻辑层的开发同时进行。

n         JSP帮助组织Web应用的物理方面。

JSP是自动编译的,而Servlets需要手动编译。

在显示层经常发生变动的时候,是用JSP;在需要处理更加复杂的业务逻辑的时候使用Servlets

 

在一个具体项目的开发过程中,选择JSP还是Servlets并不是一个非此即彼的命题。更好的方法是混合使用两者来开发一个平衡的系统。

 

 

 

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:173736次
    • 积分:2909
    • 等级:
    • 排名:第12204名
    • 原创:96篇
    • 转载:19篇
    • 译文:12篇
    • 评论:3条