论文部分内容阅读
摘 要:随着计算机技术的不断发展,人们根据不同需要逐步开发了动态网页技术。JSP即为一种新型的动态网页技术,可以促进网络技术的发展。本文将就JSP动态网站的先进技术,优点和缺点进行主要论述。
关键词:JSP技术 动态网页 优点 缺点
21世纪,互联网的迅猛发展,网络成为了我们的必需品。网页的开发技术层出不穷。基于Java语言的JSP网络技术脱颖而出,也使C/S模式蓬勃发展。JSP作为一种动态网页开发技术,为开发人员对于动态网页的制作与维护提供了简单又高效的开发方法。本文从JSP技术的原理、特点和将来的优势展开论述,从而表明JSP技术在动态网页开发上的重要地位。
一、 JSP技术概述
JSP是Servlet的扩展,JSP没出现之前就已经出现了Servlet技术。这里有必要解释一下早起Servlet。Servlet是利用了"输出流"去动态生成了HTML页面。包括 每一个HTML标签和所有的HTML页面中出现的内容,简单点说就是利用Servlet的输出流将HTML标签生成一个HTML页面。由于时间长了 Servlet中包含了大量的HTML标签、大量的静态文本及格式等导致了Servlet的开发效率非常低下。这时候JSP诞生了。JSP实现了动态网页与静态页面的分离,所以JSP主要是由两部分组成:(1)静态部分,包含一些标准的HTML标签、静态的页面内容。这些与HTML语言密不可分。(2)动态部分,就是数据从数据库取得,当数据库的数据发生变化时,页面不需要更改,页面中的数据即可发生变化。
二、JSP技术的运行机制
JSP技术的开发采用C/S模式。当一个JSP文件第一次被请求(request)时,将请求内容发送给WEB服务器,这时服务器接收请求后,首先判断JSP文件是否被修改,如有必要进行修改,则在响应的Servlet中执行特定操作(对请求数据进行增、删、改、查等操作),数据在servlet中执行完成后生成一个回应(response),返回到前端页面。这里值得注意的是,当JSP文件第一次被请求访问时,运行速度会较后续访问要慢一些,主要原因之一是,servlet的第一次编译,需要校对专用的API是否正确。
三、JSP技术特点
JSP技术所开发的Web应用程序是基于Java的,它拥有Java语言跨平台的特性,以及业务代码分离、继承Java Servlet功能、预编译、提供了隐含对象和采用表达式语言简化了页面开发等特征。
1.跨平台。由于JSP是基于Java语言的,那么它就可以使用Java API,所以它也是跨平台的,可以应用在不同的系统中,如Windows、Linux、Mac和Solaris等。这同时也拓宽了JSP可以使用的Web服务器的范围。另外,应用于不同操作系统的数据库也可以为JSP服务,JSP使用JDBC、JNDI等技术操作数据库,从而避免了代码移植导致更换数据库时的代码修改问题。
2.业务代码分离。采用JSP技术开发的项目,通常使用HTML语言来设计和格式化静态页面的内容,而使用JSP标签和Java代码片段来实现动态部分。程序开发人员可以将业务处理代码全部放到JavaBean中,或者把业务处理代码交给Servlet、Struts等其他业务控制层来处理,从而实现业务代码从视图层分离。这样JSP页面只负责显示数据即可,当需要修改业务代码时,不会影响JSP页面的代码。
3.继承Java Servlet功能。Servlet是JSP出现之前的主要Java Web处理技术。它接受用户请求,在Servlet类中编写所有Java和HTML代码,然后通过输出流把结果页面返回给浏览器。其缺点是:在类中编写HTML代码非常不便,也不利于阅读。使用JSP技术之后,开发Web应用便变得相对简单快捷多了,并且JSP最终要编译成Servlet才能处理用户请求,因此我们说JSP拥有Servlet的所有功能和特性。
4.预编译。预编译就是在用户第一次通过浏览器访问JSP页面时,服务器将对JSP页面代码进行编译,并且仅执行一次编译。编译好的代码将被保存,在用户下一次访问时,直接执行编译好的代码。这样不仅节约了服务器的CPU资源,还大大提升了客户端的访问速度。
5.提供了隐含对象。共有九大隐含对象。(1)request对象客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。(2)response对象包含了响应客户请求的有关信息。(3)session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。(4)out对象是JspWriter类的实例,是向客户端输出内容常用的对象。(5)page对象就是指向当前JSP页面本身,有点象类中的this指针。(6)application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。(7)exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。(8)pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的session,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者。(9)config對象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数以及服务器的有关信息。
6.采用表达式语言简化了页面开发。采用JSTL表达式和EL表达式两种方式。 JSTL一般要配合EL表达式一起使用,来实现在jsp中不出现Java代码段。EL表达式语言:用于计算和输出存储在标志位置的Java对象的值,然后对它们执行简单操作。通常与 JSTL 标记一起作用,能用简单而又方便的符号来表示复杂的行为。
四、JSP技术的发展趋势
通过以上的分析和论述可知,JSP技术拥有非常多的优势特点,这是时代发展过程中进行择优选择的产物。据某招聘网站统计结果称,我国每年JSP技术的开发人员需求达到1200万人,并且需求量还在增加,由此可以看出学习JSP技术的开发人员将来会增加。其次,使用JSP技术来开发的网站也会增多,例如,网易邮箱,网易游戏等网站就是采用JSP技术来实现。从网易这种大型科技公司都采用JSP技术,不难发现,它的发展前景一片大好。这也是因为JSP技术开发效率高、周期短、安全性高、可移植的特点所决定。
五、结语
Java语言现已成为世界最热门的语言之一。它所采用的面向对象编程思想得到了众多程序员的青睐。本文通过简要介绍JSP技术的诞生、JSP技术的运行机制和JSP技术的特点,进而对JSP技术今后的发展做了展望。JSP技术的发展和完善,将会为今后动态网页的开发贡献更多的力量。我们也会见证它的进一步成长。
参考文献:
[1]范春晓. 浅谈JSP动态网页开发技术[J]. 中国科技博览. 2011.3(5).
[2]陈蓉西. JSP在移动数据库连接池的实现[J]. 微计算机技术. 2008 .
[3]孙鑫. JAVA WEB开发详解[M]. 电子工业出版社. 2007.12.
作者简介:张波(1994.07—)男。山东省滕州市人。青岛市市南区青岛大学软件工程专业本科生。
关键词:JSP技术 动态网页 优点 缺点
21世纪,互联网的迅猛发展,网络成为了我们的必需品。网页的开发技术层出不穷。基于Java语言的JSP网络技术脱颖而出,也使C/S模式蓬勃发展。JSP作为一种动态网页开发技术,为开发人员对于动态网页的制作与维护提供了简单又高效的开发方法。本文从JSP技术的原理、特点和将来的优势展开论述,从而表明JSP技术在动态网页开发上的重要地位。
一、 JSP技术概述
JSP是Servlet的扩展,JSP没出现之前就已经出现了Servlet技术。这里有必要解释一下早起Servlet。Servlet是利用了"输出流"去动态生成了HTML页面。包括 每一个HTML标签和所有的HTML页面中出现的内容,简单点说就是利用Servlet的输出流将HTML标签生成一个HTML页面。由于时间长了 Servlet中包含了大量的HTML标签、大量的静态文本及格式等导致了Servlet的开发效率非常低下。这时候JSP诞生了。JSP实现了动态网页与静态页面的分离,所以JSP主要是由两部分组成:(1)静态部分,包含一些标准的HTML标签、静态的页面内容。这些与HTML语言密不可分。(2)动态部分,就是数据从数据库取得,当数据库的数据发生变化时,页面不需要更改,页面中的数据即可发生变化。
二、JSP技术的运行机制
JSP技术的开发采用C/S模式。当一个JSP文件第一次被请求(request)时,将请求内容发送给WEB服务器,这时服务器接收请求后,首先判断JSP文件是否被修改,如有必要进行修改,则在响应的Servlet中执行特定操作(对请求数据进行增、删、改、查等操作),数据在servlet中执行完成后生成一个回应(response),返回到前端页面。这里值得注意的是,当JSP文件第一次被请求访问时,运行速度会较后续访问要慢一些,主要原因之一是,servlet的第一次编译,需要校对专用的API是否正确。
三、JSP技术特点
JSP技术所开发的Web应用程序是基于Java的,它拥有Java语言跨平台的特性,以及业务代码分离、继承Java Servlet功能、预编译、提供了隐含对象和采用表达式语言简化了页面开发等特征。
1.跨平台。由于JSP是基于Java语言的,那么它就可以使用Java API,所以它也是跨平台的,可以应用在不同的系统中,如Windows、Linux、Mac和Solaris等。这同时也拓宽了JSP可以使用的Web服务器的范围。另外,应用于不同操作系统的数据库也可以为JSP服务,JSP使用JDBC、JNDI等技术操作数据库,从而避免了代码移植导致更换数据库时的代码修改问题。
2.业务代码分离。采用JSP技术开发的项目,通常使用HTML语言来设计和格式化静态页面的内容,而使用JSP标签和Java代码片段来实现动态部分。程序开发人员可以将业务处理代码全部放到JavaBean中,或者把业务处理代码交给Servlet、Struts等其他业务控制层来处理,从而实现业务代码从视图层分离。这样JSP页面只负责显示数据即可,当需要修改业务代码时,不会影响JSP页面的代码。
3.继承Java Servlet功能。Servlet是JSP出现之前的主要Java Web处理技术。它接受用户请求,在Servlet类中编写所有Java和HTML代码,然后通过输出流把结果页面返回给浏览器。其缺点是:在类中编写HTML代码非常不便,也不利于阅读。使用JSP技术之后,开发Web应用便变得相对简单快捷多了,并且JSP最终要编译成Servlet才能处理用户请求,因此我们说JSP拥有Servlet的所有功能和特性。
4.预编译。预编译就是在用户第一次通过浏览器访问JSP页面时,服务器将对JSP页面代码进行编译,并且仅执行一次编译。编译好的代码将被保存,在用户下一次访问时,直接执行编译好的代码。这样不仅节约了服务器的CPU资源,还大大提升了客户端的访问速度。
5.提供了隐含对象。共有九大隐含对象。(1)request对象客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。(2)response对象包含了响应客户请求的有关信息。(3)session对象指的是客户端与服务器的一次会话,从客户连到服务器的一个WebApplication开始,直到客户端与服务器断开连接为止。(4)out对象是JspWriter类的实例,是向客户端输出内容常用的对象。(5)page对象就是指向当前JSP页面本身,有点象类中的this指针。(6)application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。(7)exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。(8)pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的session,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者。(9)config對象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数以及服务器的有关信息。
6.采用表达式语言简化了页面开发。采用JSTL表达式和EL表达式两种方式。 JSTL一般要配合EL表达式一起使用,来实现在jsp中不出现Java代码段。EL表达式语言:用于计算和输出存储在标志位置的Java对象的值,然后对它们执行简单操作。通常与 JSTL 标记一起作用,能用简单而又方便的符号来表示复杂的行为。
四、JSP技术的发展趋势
通过以上的分析和论述可知,JSP技术拥有非常多的优势特点,这是时代发展过程中进行择优选择的产物。据某招聘网站统计结果称,我国每年JSP技术的开发人员需求达到1200万人,并且需求量还在增加,由此可以看出学习JSP技术的开发人员将来会增加。其次,使用JSP技术来开发的网站也会增多,例如,网易邮箱,网易游戏等网站就是采用JSP技术来实现。从网易这种大型科技公司都采用JSP技术,不难发现,它的发展前景一片大好。这也是因为JSP技术开发效率高、周期短、安全性高、可移植的特点所决定。
五、结语
Java语言现已成为世界最热门的语言之一。它所采用的面向对象编程思想得到了众多程序员的青睐。本文通过简要介绍JSP技术的诞生、JSP技术的运行机制和JSP技术的特点,进而对JSP技术今后的发展做了展望。JSP技术的发展和完善,将会为今后动态网页的开发贡献更多的力量。我们也会见证它的进一步成长。
参考文献:
[1]范春晓. 浅谈JSP动态网页开发技术[J]. 中国科技博览. 2011.3(5).
[2]陈蓉西. JSP在移动数据库连接池的实现[J]. 微计算机技术. 2008 .
[3]孙鑫. JAVA WEB开发详解[M]. 电子工业出版社. 2007.12.
作者简介:张波(1994.07—)男。山东省滕州市人。青岛市市南区青岛大学软件工程专业本科生。