JSP是什么?JSP是什么意思?

JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。

JSP的简单介绍

  JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。

  Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。  

 JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。  

 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。    JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。  

 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。  

 JSP可用一种简单易懂的等式表示为:HTML+Java+JSP标记=JSP。

JSP技术的强势


(1)一次编写,到处运行。除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP.NET的局限性JSP的优势是显而易见的。
(3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
(5)支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVA BEANS 组件来实现复杂商务功能。
JSP技术的弱势

  (1) 与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。
  (2) Java的运行速度是用class常驻内存来完成的,所以它在一些情况下所使用的内存比起用户数量来说确实是“最低性能价格比”了。从另一方面,它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。

(0)

相关推荐

  • javascript:void(0)是什么意思及href=#与href=javascriptvoid(0)的区别

    Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值. void 操作符用法格式如下: 1. javascript:void (expression) 2. javascript:void expression expression 是一个要计算的 Javascript 标准的表达式.表达式外侧的圆括号是选的,但是写上去是一个好习惯. 你以使用 void 操作符指定超级链接.表达式会被计算但是不会当前文档处装入任何内容. 示例-点击超链接不跳转 1:<a href

  • 什么是MEAN?JavaScript编程中的MEAN是什么意思?

    前段日子看到一篇文章提到MEAN这个词,什么是MEAN? 其实MENA就是 MongoDB(非关系数据库) + Express(模板引擎) + AngularJS(MVC javascript库) + NodeJS(服务器脚本)的简称. 它们共同构造 基于 javascript 的 现代web应用全栈开发工具. MongoDB: 是一种强大.灵活.可扩展的数据存储方式. 它扩展了关系型数据库的众多有用功能,如辅助索引.范围查询.和排序.它内置的对MapReduce式聚合的支持和对地理空间索引的支

  • 有一段有意思的代码-javascript现实多行信息

    Function.prototype.getMultiLine = function() {  var lines = new String(this);  lines = lines.substring(lines.indexOf("/*") + 3, lines.lastIndexOf("*/"));  return lines;  } var ffff = function() {  /*  张三去倒水 天哪!  */  } document.write(ff

  • JavaScript 是什么意思

    JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能. javascript一种由Netscape的LiveScript发展而来的脚本语言,它提高与Java的兼容性.JavaScript采用HTML页作为其接口 为了使网页能够具有交互性,能够包含更多活跃的元素,就有必要在网页中嵌入

  • javascript:void(0)是什么意思示例介绍

    Javascript中void是一个操作符,该操作符指定要计算一个表达式但是不返回值. void 操作符用法格式如下: 1. javascript:void (expression) 2. javascript:void expression expression 是一个要计算的 Javascript 标准的表达式.表达式外侧的圆括号是选的,但是写上去是一个好习惯. (实现版本 Navigator 3.0 ) 你以使用 void 操作符指定超级链接.表达式会被计算但是不会当前文档处装入任何内容.

  • 一个挺有意思的Javascript小问题说明

    先来看以下3段代码 复制代码 代码如下: var firstName = "Mark"; (function DisplayFirstName() { console.log(firstName); })();//必然输出 Mark var lastName = "Aut"; (function DisplayLastName() { var lastName = "Bru"; console.log(lastName); })();//必然输出

  • JSP由浅入深(9)—— JSP Sessions

    在经典的网站上,访问者可以浏览几个网页并执行一些交互的行为.如果你在编写这样的网站,利用每一个用户的一些数据是非常有用的.为了这个目的,我们可以使用JSP中的"sessions". Session是一个跟用户相关的对象.当用户访问网站的时候,一些数据就被存放于session中,并在需要的时候从中取出数据.Session为不同的用户保存了不同了数据. 以下的网页将用户的名字放置于session中,并可以在其它地方来显示它.首先我们要制作一个表单,然后将它命名为GetName.html &

  • jsp中文乱码 jsp mysql 乱码的解决方法

    jsp中文乱码 jsp mysql 乱码要servlet里面支持中文的方法: 在dopost或者doget的第一句加上: request.setCharacterEncoding("GB2312"); response.setCharacterEncoding("GB2312"); jsp乱码问题在jsp里面就把 <%@ page contentType="text/html; charset=gb2312" language="

  • JSP教程(五)-JSP Actions的使用下

    jsp:useBean Action 的使用 一. 语法: <jsp:useBeanid="beanInstanceName"scope="page|request|session|application"{ class="package.class" |type="package.class" |class="package.class" type="package.class"

  • JSP由浅入深(8)—— JSP Tags

    JSP另外一个重要的语法是Tags(标记).JSP Tags不是使用<%,而只是使用<字符.JSP Tag有点象HTML Tag .JSP tags可以有一个"start tag".一个"tag body"以及一个"end tag".开始和结束的标志都可以使用标志的名字,都被圈在<和>字符里面.结束的标志是在字符<后面加一个反斜杆(/)字符.这个标志名字有一个嵌入的冒号(:)字符在里面,其中冒号前面的部分描述了标志的

  • JSP由浅入深(7)—— JSP Directives

    在前面的教程中,我们已经使用了java.util.Date.可以有人就会问:为什么不只使用import java.util.*呢?其实,在JSPs中也可以使用import语句,但是它的语法跟普通的Java是有些差别的.下面给出一个例子: <%@ page import="java.util.*" %> <HTML> <BODY> <% System.out.println( "Evaluating date now" );

  • JSP教程(三)--JSP中”预定义变量”的使用

    为了简化JSP表达式和scriptlets中的代码,提供了8种自动定义的变量,有时称做implicit objects(固有对象).它们是:request,response,out,session,application,config,pageContext,和 page.下面我们来详细的了解它们. request 与request相联系的是HttpServletRequest类,使您可以得到request的参数(通过getParameter方法),request 的类型(GET,POST,HE

  • JSP教程(四)-JSP Actions的使用

    JSP actions 使用您可以动态的插入一个文件,重用JavaBeans组件,前进到另一个页面,或为Java 插件生成一个HTML.可以使用的action 有: (1) jsp:include --在页面被请求时包含进一个文件.(2) jsp:useBean--找到或实例化一个JavaBean.(3) jsp:setProperty--设置一个JavaBean属性.(4) jsp:getProperty--将JavaBean的属性插入到输出.(5) jsp:forward--让请求者可以向前

  • JSP由浅入深(6)—— JSP声明

    现在你所编写的JSP要变成一个类的定义.所有你编写的scriptlets要放置到这个类的一个方法中.同样,你可以增加变量和方法声明到这个类中.当然你也可以从scriptlets和表达式中使用这些变量和方法. 为了增加一个声明,你必须使用<%! and %>来圈起你的声明,比如: <%@ page import="java.util.*" %> <HTML> <BODY> <%! Date theDate = new Date();

  • extjs 分页使用jsp传递数据示例

    Ext.onReady(function() { store3 = new Ext.data.JsonStore({ autoDestroy: true, totalProperty : 'totle', url: 'service.do', storeId: 'myStore', root: 'data', fields : [ 'id', "name", "pw" ] }); var pagingToolbar = new Ext.PagingToolbar({

  • 详解Struts2中对未登录jsp页面实现拦截功能

    Struts2中拦截器大家都很经常使用,但是拦截器只能拦截action不能拦截jsp页面.这个时候就有点尴尬了,按道理来说没登录的用户只能看login界面不能够通过输入URL进行界面跳转,这显然是不合理的.这里介绍Struts2中Filter实现jsp页面拦截的功能.(有兴趣的人可以去研究Filter过滤器的其它用法,因为利用过滤器也可以实现action拦截的功能) 下面直接上代码,边看边分析实现步骤和原理. 1.web.xml中的配置信息: <filter> <filter-name&

随机推荐