当前位置:文档之家› jsp页面Displaytag标签的使用

jsp页面Displaytag标签的使用

jsp页面Displaytag标签的使用
jsp页面Displaytag标签的使用

jsp页面Displaytag标签的使用

Display Tag Lib是一个标签库,用来处理jsp网页上的Table,功能非常强,可以对的Table进行分页...

Display Tag Lib是一个标签库,用来处理jsp网页上的Table,功能非常强,可以对的Table进行分页、数据导出、分组、对列排序等等,反正我在做项目时需要的功能它都给我提供了,而且使用起来非常的方便。能够大大减少代码量。

介个是Display Tag的官方网站https://www.doczj.com/doc/e611109900.html,。

首先当然是要下载它的jar包了,这里可以下载到最新的版本。将jar包放到WEB-INF的lib文件夹下。另外还需要两个辅助包:apache的commons-lang 和standard包,更多的辅助包可以在这里下载。

在web.xml下添加一个filter

exportFilter

org.displaytag.filter.ResponseOverrideFilter

在jsp页面做一个引用:

<%@ taglib uri="https://www.doczj.com/doc/e611109900.html,/el" prefix="display" %>

首先我们定义一个list

<%

List test= new ArrayList( 6 );

test.add( "Test String 1" );

test.add( "Test String 2" );

test.add( "Test String 3" );

test.add( "Test String 4" );

test.add( "Test String 5" );

test.add( "Test String 6" );

request.setAttribute( "test", test );

%>

当我们想在jsp页面上显示这个list时,我们只需要写一句话

display tag会自动生成一个table

如果list是从控制层抛出来的,name可使用EL表达式表示

这是最简单的display tag的使用,我们可以给它加上样式等,也可以定义显示的列,下面的table显示复杂一些

如果想要给它加个链接也很简单,下面的代码给name加了连接,并附带id 参数,email也自动连接到mailto:XXX

下面介绍几个Display最常用的功能,更多功能请参考https://www.doczj.com/doc/e611109900.html,/displaytag-examples-1.1/。

1. 分页

如果想对代码分页,只需在display:table标签中添加一项pagesize="每页显示行数",如

2. 对列排序

display tag可对列进行排序,就是点击列名,对该列的数据进行排序。你只需对想要排序的列添加sort="true" 就OK,如下面的代码可对前三列进行排序。在display:table中添加defaultsort="列数",可默认对指定的列排序。

如果table有分页,Display Tag默认只对当前页进行排序,如果想对整个list 排序,可以在display:table之间添加一段代码:

3. 导出数据

在display:table中添加export="true",看看会出现什么!Display Tag默认会提供三种数据导出方式:CSV、Excel、XML 。

另外Display Tag还可以导出为PDF格式,在https://www.doczj.com/doc/e611109900.html,/itext/下载一个辅助包iText.jar,copy到lib目录

下,然后在display:table之间添加一段代码:

,大功告成。

4. Display Tag的属性设置

前面所说的display:setProperty 是一种改变Display Tag属性的方法,但是在每个jsp中都要写太麻烦了。

Display Tag中设置了很多默认的属性,它有一个专门的属性文件,是在它的jar包中的displaytag/properties/TableTag.properties

想要改变它的默认属性,我们可以在WEB-INF\classes下新建一个文件displaytag.properties,仿照TableTag.properties中属性的格式设置需要修改的属性。

TableTag.properties中的# messages中设置的是显示在页面上的提示信息。默认是英文的,我们可以把它改为中文的。不过这里只能使用unicode,就是说中文字符必须转换为unicode码,这个可以使用jdk自带的native2ascii.exe进行转换。

5. 其它功能

DisplayTag还有一些很实用的小功能,这里提两个。一个是对数据的Format,这是1.1版本添加的新功能,可以使用标签的方式格式化时间、数字、字符串。比如日期,在需要格式化的column标签中添加format="{0,date,yyyy-MM-dd}",第一个参数为格式化的数据序号,第二个参数是数据类型,数字为number,第三个参数为数据格式。

另外一个功能是对table数据的合计功能。在table标签中添加decorator="org.displaytag.decorator.TotalTableDecorator",然后在想要进行合计的数据列的column标签中添加total="true",该列就可以被计算总数了。但这个功能有个缺点,不能用在有分页的时候,它只能合计第一页的数据。

DisplayTag的不足

初次使用DisplayTag的人可能会觉得惊喜,但是用久了会发现很多问题,最大的问题是对中文的支持不好,比如如果查询条件中有中文,就无法翻页,无法对中文排序,将中文导出为指定文件时出现乱码等等。这些问题有时候会让人很郁闷,有时候逼得你要去修改它的源代码。下面是对以上几个问题的解决方法:

1. 对于中文无法翻页、排序,最简单的办法是修改Tomcat下的server.xml 文件。找到HTTP的Connector标签,在里面添加一项URIEncoding="...",引号里面的内容取决于你的页面编码,比如可以是GBK,UTF8等。这样上面两个问题就可以解决了。

2. 导出为文件:其实这个功能除了中文支持外还有很多其它问题,比如它会将Html标签一起导出、只导出显示的内容,但如果对table进行了decorator,decorator后的内容无法导出。如果想要将中文正确导出,需要修改DisplayTag 源代码。

下载相同版本的源代码,在org.displaytag.export.ExcelView.java文件中找到getMimeType()方法,将此方法修改为return "application/vnd.ms-excel;charset=GB2312";,修改后导出数据的速度会慢很多,不过将就吧。

3. 新版的DisplayTag1.1添加了对一次取部分数据的支持,相关的标签包括

partialList和size,需要设置partialList="true"和size的大小。具体怎么用偶还没研究。

首先,墨守成规地把这几天的学习内容罗列一下。

然后,根据displaytag具有的缺陷以及解决办法提出自己的无限失望。

好,开始列了,

displaytag 学习笔记总结(1)

6,列表的子集

offset 为第一个数据在mylist中的序号。

length 为显示的记录条数。

7,自动设置链接

能够把此列的内容作为链接,连接的url和内容一致。

当然必须格式有效的url,否则写了也没有连接。

自认为这个功能一般。

因为连接的内容和显示的内容通常不一样。

当然可以在在这里给某列指定所有的链接为同一个连接。

或者sdfs两者效果是一样的。

!!!那么,如果连接的url不是列内容,而且每行的链接都不相同,这个时候怎么办?

就好像广告列表有商户名称,商户名称是一个连接,连接到商户的具体信息页面。连接的url肯定不同。如何处理?

现在还不知道,接着往下看。

8,使用装饰类来转换数据。

用来转换数据内容的。一般用来格式化信息。

此类必继承TableDecorator。

顺便介绍一个格式化时间的包https://www.doczj.com/doc/e611109900.html,ng.time.FastDateFormat;

格式化金钱的包java.text.DecimalFormat;

思路就是覆盖List中具体类型的getXXX方法。

this.getCurrentRowObject() 得到当前行的数据。

this.getListIndex() 得到当前行的序号。

之后就转化为List中存放的具体类型,之后得到某列的数据。

返回格式化后的数据。

!!!!另外我看到,装饰类增加了一些getXXX方法,这些方法并没有在ListObject 中定义。

还不知道这样做有什么好处?

这样仅仅对一列数据进行格式化,需要继承ColumnDecorator

需要实现:String decorate(Object columnValue)方法。此方法同样接受一个Object 参数,

此参数就是对象的某个具体属性值,直接转化为对应类型,然后格式化,返回String。

9,建立动态链接。

两种方式可以建立动态链接。

第一种方式直接在页面上使用

http://baseurl/paramid=columnvalue

http://baseurl/paramid=scope范围内的名字为name的值

http://baseurl/paramid=名字为propertyname的属性值

这种方式处理简单的链接十分有效,但是链接参数值如果通过查询数据库等比较复杂的方式得到的话,这种方式

就不适应了。这时候就必须使用第二种方法。

第二种方法,在装饰类中获得连接。

装饰类多定义一些getXXX方法,那么页面上就可以使用来使用装饰类de

getXXX方法。好,这样一来,在装饰类的getXXX方法里,得到此行对象,这样对象的各个属性就都能得到,

之后去查数据库也好,去完成负责的判断逻辑也好,都很容易实现,别忘了,然后拼装起来,并写成一个

这样的字符串返回。

好,页面直接一句话就可得到此拼装的《a》了。

第二种方法比较好些,因为可以显得更灵活。想怎么写就怎么写。第一种方法就是简单地实现。

10,翻页。

1,怎么得到每行的序号?

使用<%=pageContext.getAttribute("xxx_rowNum")%>肯定好用。

但是这种方式就不好用。也不知道差哪了。

翻页很简单。就是在这样来指定每页的数量就可以了。

自动出现换页的索引,上下页等等东西。

实在是方便。但是问题就是一次传下来很多东西,性能不好。等一会看看如何改良。

11,自动设置排序

可以设定默认时按照哪列排序,是升序还是降序。本例设置第一列默认时降序。每列都得对象都必须实现了Comparable接口才能被设置成sortable="true".

如果没有实现Comparable,那么必须写一个装饰类。

另外需要注意,

他只对当前页面进行排序。而不是全部。在翻页时特别需要注意。

要想实现全部的排序,那么必须重新写Action往网页传新的List了。

12,如何分组

按照某列进行分组显示。

这个功能真不错。

这样不仅仅结果可以分组,而且还可以省略掉重复的数据,例如city列,project 列都有

A ,

B ,A,B 两行那么第二行这两列就不显示了。

同样只能对当前页进行分组。

注意:第一列一定要1,第二列一定是2,否则出NUllPoint 错误。

13,统计

好东西啊。可以对分组进行统计,也可以对所有行进行统计。

主要靠TableDecorator类finishRow()返回统计结果,放到页面去显示。

TableDecorator类方法getDecoratedObject()得到整个结果集。一般把它转化成List,因为大多数情况下结果

是存放在List中的。

public final String finishRow() {}当一行结束时执行此方法。所以用它来判断是否需要计算城市统计,

抑或是全部统计。

相当于事件处理。返回的字符串也将在页面上显示。本例返回了...这样的三份。

这样就在表中嵌套进了三行。用来显示统计是足够了。

14,导出数据

很简单。talbe里设置export=“true”就行了。配置文件也要设置好export.xml= true , 这样才能导出xml。

类推pdf、excel、html、csv。

每个列能配置是否在某种格式中显示,语法

另外需要注意:

被包含的文件不能使用这个功能,非要使用,就的用过滤器。以后再深研究吧。

15,配置DisplayTag.

在应用的classpath路径上拷贝一个TableTag.properties,并命名为displaytag.properties.

这样就默认取displaytag.properties里的配置了。想汉化,很简单。就需要把displaytag_zh.properties放到

classpath路径下就可以了。

标题像汉化:因为默认是jstl的资源文件使用方式。所以得先学习jstl的

我知道了jstl.fmt如何使用资源文件。好了,jstl 首先必须用fmt:bunlle指定一个资源文件,然后才能

在他的body部分使用此资源文件,颇麻烦。

而displaytag呢?没有这么麻烦,如果与struts搭配使用,适用struts的资源文件当然最合理了。

你必须在displaytag.properties里定义好一个

参数,#locale.provider=org.displaytag.localization.I18nJstlAdapter

locale.provider=org.displaytag.localization.I18nStrutsAdapter

就这么简单,就能够使用struts配置文件了。我今天竟然看了一下午。哎,苦于没有好点的资料啊。

问题是:如果不合struts搭配使用。如果仅仅在jstl环境下,displaytag又该如何使用jstl的资源文件呢?

你必须象在jstl环境里一样使用指定好资源文件,之后把displaytag 标签放到他的body

后,就可以使用jstl的资源文件了!!!!(幸亏我首先看了jstl使用资源文件的方法)

16,一个页面两个以上的表格.

很简单,只需要每个表格配置不同的id.

17,表格里面还有表格.

很简单.只要在外层表的

( 在这加。。。

即可)

18,表头表尾

很简单:一样使用就行了.

主要注意一下: 内容必须是.....

19,表格里的值截断,与显示空白.

简单得很.

ok,差不多到了关键的时候了。!!!!!

=============================================

关键:

20,如何分页.

因为displaytag的分页机制需要一次把所有纪录都传到里面.所以对纪录很多的项目并不合适.如果还非得用

displaytag那只好放弃他的一些功能了.比较理智的方法是仅仅让displaytag获得一页的list.这样就不用displaytag

的分页index,而使用自己的,或者写customertag,或者使用jsppager tag.

有很多人质疑这种方法,因为这使得displaytag的光芒至少减少了一半以上,因为他的很多功能因此而无法使用,

例如排序功能,可以针对所有list进行全局排序,如果每次只传给一页的数据,全局排序就和当页排序没有区别了.

displaytag的全局排序功能宣布废掉了.

这样的功能基本上也没有什么用处。

那么还使用它干什么呢? displaytag即使废掉了一些武功仍然有它的优点.例如1,支持表格的嵌套.

2,支持css这样就能写少量地代码使得程序更简洁.只好定义好一套css,就能全局范围内使用了.

3,另外还支持截断长的字符串,这样就不用在页面使用自己的方法了.

4,能够实现比较复杂的逻辑从而产生动态链接。这也勉强所以个好处吧。

5,能轻松地使用struts的资源文件。使得它可以很好的国际化。

6,能够过滤空值。

缺点:

1,分组就使用不了了,统计也无法使用了。只统计当前页是没有意义的。

2,排序也变成当前页排序了。

jsp动态网页实用代码

实验2:运用JSP编写动态网页 一.选题问题 1)编写一个购物车,实现向购物车里添加商品、移除指定商品和清空购物车的功能 2)延续实验一 二.程序设计 1.功能 1)购物车:可以实现向购物车里添加指定商品,移除指定商品,清空购物车的基本功能,另外还可以实现简单的结算功能。 2)实验一延续:实现登录、以及同一用户不能重复登录的功能 2.技术 1)必用技术: JSP内置对象:Request,Response 2)选用技术: JSP、JavaScript:Session,application 三.数据设计 1.含义 1)购物车: 1>goods.html:用来显示商品清单,选择购买数量,以及添加到购物车 2>cart.jsp:用来查看添加到购物车的商品,实现商品的删除,以及返回购物页面继续添加或者跳转到结算页面支付。使用了request获得信息,session创建表单,调用了自创建的hzsb类。 3>hzsb.jsp:定义了一个“汉子识别”的类,该类可以把从页面中获取的汉子自动转换成单字节编码,并在显示时再转换回来。 4>cost.jsp:结算页面。负责将购物车里所有的商品及数量显示出来并且进行统计,得到总计钱数。使用了request获得信息,session创建表单,调用hzsb类。 2)实验一添加功能 1>web.html:显示实验一中的页面,其中“登录”超链接到index.jsp;“注册”超链接到count.jsp。 2>index.jsp:登录页面。用于用户名和密码的输入,输入完成后点击“确定”,可以跳转到rsInfo.jsp页面查看所输入的信息是否保存。 3>rsInfo.jsp:查看页面。该页面用于显示所输入的信息。另外该页面调用了response对象,用于显示当前的时间,并用于页面的刷新。 4>count.jsp:“同一用户只能登录一次页面”,即用户一旦登录就不能够通过反复刷新页面造成“多次登录”的假象。该页面调用了application对象,用于覆盖掉刷新的次数。 2.作用范围 1)购物车 1>goods.html: 作用于“购物车实例”页面,代码如下 购物车实例

JSP的特点和其它动态网页开发技术比较

JSP的特点和其它动态网页开发技术比较 发布时间:2007.06.27 05:36来源:赛迪网技术社区作者:dxaw JSP技术特点: 1.将内容的生成和显示进行分离 使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。 在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。 2.强调可重用的组件 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。 3.采用标识简化页面开发 Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。 标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。 JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。 作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。 与其它动态网页技术的比较: 与传统的CGI方式相比 a. 后台实现逻辑是基于Java Component的,具有跨平台的特点 b. 将应用逻辑与页面表现分离,使得应用逻辑能够最大程度得到复用,从而提高开发效率 c. 运行比CGI方式高,尤其对于数据库访问时,提供了连接池缓冲机制,使运行所需资源最小

动态网页制作:ASP、JSP、PHP三种技术比较

动态网页制作:ASP、JSP、PHP三种技术比较 目前,最常用的三种动态网页语言有ASP(Active Server Pages),JSP(JavaServer Pages),PHP (Hypertext Preprocessor)。 简介 ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。ASP采用脚本语言VBScript(Java script)作为自己的开发语言。 PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(http: //https://www.doczj.com/doc/e611109900.html,)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。 JSP是Sun公司推出的新一代网站开发语言,Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和Java Applet之外,又有新的硕果,就是JSP,Java Server Page。JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。 三者都提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。但JSP代码被编译成Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。在ASP 、PHP、JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP 、PHP、JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP 、PHP、JSP三者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。 技术特点: ASP: 1. 使用VBScript 、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。 2. 无须compile编译,容易编写,可在服务器端直接执行。 3. 使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。 4. 与浏览器无关(Browser Independence), 客户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。Active ServerPages 所使用的脚本语言(VBScript 、Jscript)均在WEB服务器端执行,客户端的浏览器不需要能够执行这些脚本语言。 5.Active Server Pages能与任何ActiveX scripting语言兼容。除了可使用VB Script或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其它脚本语言,譬

jsp动态网页制作

长春理工大学光电信息学院 《JSP动态网页制作》实验指导书 孙颖馨编写 信息工程分院计算机实验中心

目录 实验一.................................................................... .. (3) 实验二 (4) 实验三 (5) 实验四 (6) 实验五 (7) 实验六 (8) 实验七 (9) 实验八 (11) 实验九 (13) 实验十 (14) 实验十一 (16) 实验十二 (17) 实验十三 (18)

1.实验目的 了解和掌握安装和配置JSP的运行环境和开发环境所需的部分软件的方法。 2.实验内容 掌握安装JDK、安装和配置Tomcat以及安装和配置Eclipse 开发工具。 3.实验步骤 下面以安装Eclipse 为例,进行练习。 (1)从Eclipse 官方网站(https://www.doczj.com/doc/e611109900.html, )中搜索Eclipse SDK3.1。 (2)在相应的网页上单击下载,将Eclipse-SDK-3.1-win32.zip下载到安装目录,如E:\。 (3)打开【我的电脑】,找到E驱动器下的Eclipse-SDK- 3.1-win32.zip文件。 (4)右键单击Eclipse-SDK-3.1-win32.zip文件,(假设已经安装WinRAR 中文版)在弹出的快捷菜单中选择【解压到当前文件夹】命令。 (5)打开解压缩后的Eclipse文件夹,双击Eclipse.exe文件启动Eclipse。 (6)在【Workspace Launcher】对话框中指定工作空间位置,单击【OK】按钮即可运行Eclipse。

JSP实用教程练习题

JSP实用教程习题集 第一章JSP简介 一、选择题 1.当用户请求jsp页面时,JSP引擎就会执行该页面的字节码文件响应客户的请求,执行字节码文件的结果是(C) A)发送一个JSP源文件到客户端 B)发送一个Java文件到客户端 C)发送一个HTML页面到客户端 D)什么都不做。 2.当多个用户请求同一个JSP页面时,Tomcat服务器为每个客户启动一个(B)A)进程B)线程C)程序D服务。 3.下列动态网页和静态网页的根本区别描述错误的是(D)。 A)静态网页服务器端返回的HTML文件是事先存储好的 B)动态网页服务器端返回的HTML文件是程序生成的。 C)静态网页文件里只有HTML标记,没有程序代码。 D)动态网页中只有程序,不能有HTML代码。 4.不是JSP运行必须的是(D) A)操作系统 B)JavaJDK C)支持Jsp的Web服务器 D)数据库 5.URL是Internet中资源的命名机制,URL由三部分构成(A )。 A)协议、主机DNS名或IP地址和文件名 B)主机、DNS名或IP地址和文件名、协议 C)协议、文件名、主机名 D)协议、文件名、IP地址 6.下列说法哪一项是正确的(C) A)Apache用于ASP技术所开发网站的服务器 B)IIS用于CGI技术所开发网站的服务器 C)Tomcat用于JSP技术所开发网站的服务器 D)WebLogic用于PHP技术所开发网站的服务器 7.Tomcat服务器的默认端口号是:(B) A)80 B)8080 C)21 D)2121 二、判断题 1.动态网页和静态网页的根本区别在于服务器端返回的HTML文件是事先存储好的还是由动态网页程序生成的(对) 2.Web开发技术包括客户端和服务器端的技术。(对)

JSP动态网页制作

JSP动态网页制作技术 JavaServer Pages (JSP) 是一种结合了跨平台与跨网站服务器机制,以 Java为主的技术来产生动态网页。 JSP与微软的ASP(Active Server Pages )相容,但它是使用类似HTML的标签以及Java代码片段而不是VBScript。当你所使用的网站服务器没有提供本地ASP支援,也确实是Apache或Netscape服务器时,你能够考虑使用JSP。尽管你能够取得这些服务器的ASP附加配备程序,但价格相当昂贵,而目前Sun并没有对你所要的JSP组件收取费用(尽管Sun以后有可能会收费)。对於Solaris与Linux以及Windows,这些组件也都专门容易取得。 请不要将JSP与服务器端的JavaScript混为一谈。网站服务器会自动将以JSP写成的Java代码片段转换成Java servlets。而许多先前必须以Perl手写程式或服务器特定的API(如ASP)操纵的功能也都可透过JSP来自动化处理。 现在就让我们开始动手关心你建立一个可执行JSP范例网站。 一、如何安装好你的机器来使用JSP 你将需要Java 2软件开发工具(JSDK),它原来的名称是Java开发工具

(JDK)以及JavaServer网站开发工具(JSWDK),Tomcat,或是其他支援JSP的网络服务器。Sun免费提供JSDK与JSWDK来供Windows,Solaris,以及Linux平台使用。 假如你想要在你目前的网络服务器上使用JSP,但服务器本身并不支援JSP与Java servlets,你能够试试看Allaire的Jrun,它的作用就像是针对Netscape企业版与FastTrack服务器、微软的网络资讯服务器(IIS)与个人网络服务器(PWS)、Apache、以及其他服务器的网络服务器附加设备。你也能够使用Apache网络服务器的Java版本,最新的JSWDK里有提供。 1、下载与安装你需要的组件 目前发表的1.2.2-001,JSDK可下载的版本是以可安装的压缩文档形式。下载的文件大约是20MB,可提供完整的Java进展环境,让你能建立利用标准API为核心的Java解决之道。然而,你的网络服务器需要应用到JSP的唯一一件事是Java编译器。要让网络服务器明白编译器的位置,将环境参数JAVA.HOME设到JSDK的安装目录。假如你是在Windows上安装同时同意预设目录,将这行代码set JAVA.HOME=C:\1.2.2加到你的autoexec.bat文件同时重新开机。在安

三种动态网页语言

目前,最常用的三种动态网页语言有ASP(Active Server Pages), JSP(JavaServer Pages), PHP (Hypertext Preprocessor)。 简介: ASP全名Active Server Pages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。ASP采用脚本语言VBScript(Java script)作为自己的开发语言。 PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法, 并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(http: //https://www.doczj.com/doc/e611109900.html,)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。 JSP是Sun公司推出的新一代网站开发语言,Sun公司借助自己在Java上的不凡造诣,将Java从Java应用程序和Java Applet之外,又有新的硕果,就是JSP,Java Server Page。JSP可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序。 三者都提供在HTML代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。但JSP代码被编译成Servlet并由Java虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生。在ASP 、PHP、JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的HTML页面只依赖于Web服务器,而ASP 、PHP、JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器。ASP 、PHP、JSP三者都是面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。 技术特点 ASP: 1. 使用VBScript 、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。 2. 无须compile编译,容易编写,可在服务器端直接执行。 3. 使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。 4. 与浏览器无关(Browser Independence), 客户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。Active ServerPages 所使用的脚本语言(VBScript 、Jscript)均在WEB服务器端执行,客户端的浏览器不需要能够执行这些脚本语言。 5.Active Server Pages能与任何ActiveX scripting语言兼容。除了可使用VB Script或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其它脚本语言,譬如REXX 、Perl 、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model) 对象。 6. 可使用服务器端的脚本来产生客户端的脚本。 7. ActiveX Server Components(ActiveX 服务器组件)具有无限可扩充性。可以使用Visual Basic 、Java 、V isual C++、COBOL等程序设计语言来编写你所需要的ActiveX

jsp动态页面基础

什么是JSP? JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。 JSP这门技术的最大的特点在于,写jsp就像在写html,但它相比html而言,html只能为用户提供静态数据,而Jsp技术允许在页面中嵌套java代码,为用户提供动态数据。 Jsp快速入门:在jsp页面中输出当前时间。 JSP原理 IE浏览器访问JSP页面时,Web服务器是如何调用并执行一个jsp页面的?(Servlet) Web服务器在执行jsp页面时,是如何把Jsp页面中的html排版标签是如何被发送到客户端的? Jsp页面中的java代码服务器是如何执行的? Web服务器在调用jsp时,会给jsp提供一些什么java对象? JSP最佳实践 不管是JSP还是Servlet,虽然都可以用于开发动态web资源。但由于这2门技术各自的特点,在长期的软件实践中,人们逐渐把servlet作为web应用中的控制器组件来使用,而把JSP技术作为数据显示模板来使用。 其原因为,程序的数据通常要美化后再输出: 让JSP既用java代码产生动态数据,又做美化会导致页面难以维护。 让servlet既产生数据,又在里面嵌套html代码美化数据,同样也会导致程序可读性差,难以维护。 因此最好的办法就是根据这两门技术的特点,让它们各自负责各得,servlet只负责响应请求产生数据,并把数据通过转发技术带给jsp,数据的显示jsp来做。 JSP语法 JSP模版元素 JSP表达式 JSP脚本片断 JSP注释 JSP指令 JSP标签 JSP内置对象 如何查找JSP页面中的错误 JSP模版元素 JSP页面中的HTML内容称之为JSP模版元素。 JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观。

网页制作动态图片效果源代码

New Document