附件1:外文资料翻译译文
基于JSP网页自动生成工具的设计与实现
Web开发技术是Internet应用的一个重要方面,而JSP又是Web开发的最先进的技术,是当前Web开发人员的首选技术。但是由于JSP对Web开发人员要求较高,所以许多一般的Web开发人员还不能够使用这一项先进的技术。讨论基于模板和标签库的JSP网页自动生成工具的设计和实现,提出具体的设计思想和实现方法。
随着WWW(World Wide Web)的普及,动态网页技术也急速发展。从原来的CGI(Common Gateway In-terface)到ASP(Active Server Page),都从某种程度上满足了网页开发人员对动态网页开发技术的需求。但是不管是CGI还是ASP都存在一定的局限性,如CGI对服务器资源的耗费,ASP只能同Microsoft IIS一起使用等,这些都限制了这些技术的使用范围,极大地阻碍了它们的推广。广大的页面开发人员都热切地盼望一种统一的页面开发技术,该技术应该具有的特点:①与操作平台无关,能够在任何Web或应用程序服务器上运行;②将应用程序逻辑和页面显示分离;③提供代码重用,简化开发基于Web的交互式应用程序的过程。
JSP(Java Server Page)技术就是被设计用来满足这样的要求的。JSP是由Sun MicroSystem公司于1999年6月推出的新的网页开发技术,它是基于Java Serv-let以及整个Java体系的Web开发技术,是Servlet2.1API的扩展。利用这一技术,可以建立先进、安全和跨平台的动态网站。
Java是未来的主流开发技术,具有很多优势。JSP则是Java在Internet/Intranet Web上的重要应用技术,得到了广泛的支持和承认,它可以和各种Java技术完好地结合在一起,从而实现非常复杂的应用。
作为一种基于文本的、以显示为中心的开发技术,JSP提供了Java Servlet的所有好处。为了做到逻辑功能和显示功能分开,JSP已经可以和JavaBeans、Enterprise JavaBeans(EJB)和Servlet一起工作。JSP的开发人员可以通过使用JavaBeans、EJB和Servlet来完成大部分与网站逻辑相关的工作,而仅仅把显示的工作交给JSP页面来完成。内容和显示逻辑分开的好处在于,更新页面外观的人员不必懂得Java代码,而更新Java类的人员也不必是设计网页的行家。这就可以用带Java类的JSP页面来定义Web模板,以建立一个具有相似外观的页面组成的网站。Java类完成数据提供,在模板中就没有Java代码,这意味着这些模板可以由一个HTML编写人员来维护。
JSP作为当前主流的网页开发技术,具有如下特点:
(1)将内容的生成和显示进行分离:使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终的页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和JavaBeans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。
(2)强调可重用的组件:绝大多数JSP页面依赖于可重用的、跨平台的组件来完成应用程序所要求的更为复杂的处理。得益于Java的操作平台无关性,开发人员能够很方便共享和交流执行普通操作的组件,或者使得这些组件为更多的使用者所使用。基于组件的方法加速了总体的开发过程,极大地提高了项目整体开发的效率。
虽然JSP功能强大,但是它要求网页开发人员对Java要相当熟悉。而现在Java程序员还比较少,对一般的网页开发人员来说,JSP的语法还是比较难于掌握的。所以,就需要有一种网页开发工具,为一般的网页开发人员提供常用的JSP应用,让只懂得一般页面开发技术(HTML)的开发人员也能够使用JSP的强大功能。
系统设计目标和使用的主要技术: (1)设计目标
本系统的设计目标是为只懂得HTML但完全不了解JSP的一般网页开发人员提供一个网页开发工具,使他们能够根据系统文档,通过标签使用JSP的常用功能,最后生成一个只包含静态HTML和JSP标签的动态JSP网页。 (2)主要技术
本系统在设计时,主要考虑使用模板和JSP标签的技术来实现。
1、模板技术
模板技术被广泛地应用于各种开发和应用系统中。它预先生成一些常用的框架结构,使用户可以根据自己的需要方便地从模板库中选择模板,而不用自己重新去搭建,节省了用户的开发时间,方便了用户的使用。在本系统中,将页面按照功能类型进行分类,归纳出常用的页面类型,生成模板库。
2、标签库技术
在JSP中,动作是可以创造与访问程序语言对象和影响输出流的元素。JSP定义了六个标准的动作。除了这六个标准动作以外,用户可以定义自己的动作来完成特定的功能。这些动作被称为客户化动作,它们是可重用的程序模块。通过这些动作,程序员就可以在JSP页面中把页面的显示功能也部分地封装起来,使整个页面更加简洁和易于维护。在一个JSP页面中,这些客户化动作是通过客户
化标签来调用的。而标签库(Tag Library)就是客户化标签的集合。 JSP标签库是一种通过JavaBeans生成基于XML的脚本的方法。它是JSP的最大特点之一。通过标签库,能够无限制地扩展JSP应用,完成任何复杂的应用需
JSP标签库具有以下特点:
①易于使用:JSP中的标签和一般的HTML标记外表上是完全一样的,使用起
来
和
普
通
的
HTML
标
记
一
样
方
便
。
②易于代码重用:标签库中的每一个标签都能完成一定的功能。一旦定义好了一个标签库,只需要把这个标签库包装成一个Jar文件,那么以后只要在别的系统中使用这个标签库就行了,而不用重新开发代码,极大地提高了系统开发效率,降
低
了
开
发
成
本
。
③易于代码维护:所有的应用逻辑都封装在标签处理器和JavaBeans中,所有的标签都集中在一个标签库中。如果需要更新代码或者需要修改一个网页上的功能,只需要修改相应的标签即可。通过这种统一维护方式,不用在每个网页上去作修改,极大地减少了维护的工作量,节约了维护成本。 ④易于系统扩充:如果需要向系统中添加新的功能,只需要定义一个新的标签来完成这一功能即可,无需对系统的其它方面作任何改动。标签库可以继承JSP规范各方面的特性。这样就可以无限制地扩展和增加JSP的功能,而不需要等待下一版本JSP的出现。
系(
统1
的)
组
系成
和统
实
组
现
: 成
求
。
本系统主要由四个部分组成:
1、数据库连接部分:本系统支持常用的几个数据库,包括Oracle、Sybase、MSSQLServer、MySQL和DB2,根据用户选择的数据库类型和用户提供的数据库名称、用户名、密码使用
JDBC
同数据库相连。
2、系统基本表生成部分:和数据库连接以后,根据同数据库相连的用户名生成两个系统基本表TC-Tables和TC-Columns,TC-Tables表包含在该数据库中属于该用户的所有的表的英文名称、中文名称和一些属性,如是否可修改、是否可查询等;TC-Columns表包含在该数据库中属于该用户的所有的表的所有列的中英文名称和其它一些属性。如是否可显示、是否可查询等。这两个系统基本表在整个系统的开发过程中提供用户所使用数据库的基本信息。 3、模板选择和网页生成部分:该部分是系统的核心部分。它包含了两个子模
块
。
①模板选择部分:系统为用户提供模板选择界面,让用户根据需要从模板库
中选择所要使用的模板。
②模板处理部分:根据用户选择的模板,系统调用指定的模板处理模块对这个模板进行处理。当处理程序遇到模板中的标签时,就为用户提供交互界面,让用户为指定的标签输入参数,并由系统验证用户输入的标签的有效性。最后由系统
完
成
JSP
页
面
的
生
成
。
4、网页预览和修改部分:网页生成出来以后,系统为用户提供了一个网页预览窗口和代码查看修改窗口。通过这个预览窗口,用户可以预览一下生成出来的JSP页面的效果。如果用户对页面的静态方面的效果不太满意,用户可以通过代码查看修改窗口修改代码中的HTML代码。如果用户对页面的静态效果有进一步的要求,系统还为用户提供了一个调用Dreamweaver编辑器的接口,用户可以使用它来对生成出来的JSP页面的静态效果进行进一步的修改和完善。 (2)系统的实现
1
、
模
板
库
和
标
签
库
的
实
现
标签库的规划和设计在整个系统设计中至关重要,它关系到了代码重用的程度和系统运行的效率。它的规划应该遵循以下原则。 1)在标签中应该尽量少的包含静态的HTML。对于一般用户来说,标签是透明的。用户不能够查看和修改标签。如果在标签中包含了过多的静态HT-ML语句,将影响用户对页面的静态效果的修改和完善,限制标签的使用。 2)尽量提高代码的重用度。在对JSP应用进行分类是尽量把公用的JSP应用提取出来,形成标签。而不用在每个标签中都重复实现该应用。这样在以后要对该应用进行修改和完善时,只需对这一个标签进行修改即可,易于代码的维护。 3)方便用户的使用。在设计标签库时,应该充分考虑到用户的使用情况,使用户能够很容易和方便地理解和使用标签。 ①标签库的定义:定义一个标签库,必须首先定义一个标签库描述文件(TLD)。这是一个基于XML的脚本文件,在这个文件中定义了XML的版本、所使用的编码、标签库的版本、所使用的JSP的版本、标签库的名称和这个库中所包含的所有的标签的定义和参数描述,包括标签的名称,标签所对应的Java类,标
签
的
描
述
信
息
等
。
②标签的实现:一个标签就是一个特殊的Java 类,这个类必须继承TagSupport类,这个类是在javax.servlet.jsp.tagext包中定义的。在标签类中,包含了这个标签的参数初始化方法(Set/Get)、标签的主体处理方法(Handler)以及供下一级标签调用的方法等。 ③模板的实现:一个模板就是一个含有标签引用的JSP文件。为了在模板中引用所定义的标签,必须首先引入标签库。
<%@tagliburi=“tag.tld”prefix=“ctag”%>
其中uri指定标签库描述文件的路径;prefix指定引用标签时所使用的前缀名2
称、
;
为系
标
统签
的开
参
数发
赋环
值
。 。 境
在模板中引用指定的标签时,使用引入标签库时所指定的前缀,指定标签的
本系统主体程序开发使用的是Borland公司的JBuilder 6.0,模板开发使用是Microsoft公司的Front-Page2000,标签库开发使用的是UltraEdit编辑器,JDK采用的是JDK1.4。系统测试环境是JRun3.0。
Java是未来开发语言的主流,而Java在Web上的主要应用JSP也必将成为未来Web开发的主流技术。本系统采用了JSP的最大特点之一的标签库,使一般的Web开发人员也能够方便地使用JSP强大的动态页面功能,开发出技术先进的JSP动态Web页面。由于本系统采用Java语言进行开发,所以可以在任何支持图形化界面的操作系统下运行,实现了完全的与平台无关。本系统易于扩充和完善。在以后可以考虑为用户提供接口,使用户可以自己扩充模板库和标签库,进一步增强系统的功能。
附件2:外文原文
Produce the design of the tool and realize automatically
on the basis of JSP webpage
It is an important respect that Internet uses that Web develops technology, and JSP is the most advanced technology that Web is developed , it is present Web developer's first-selected technology. But because JSP has relatively high expectations for Web developer, a lot of general Web developers can not use this advanced technology . The discussion produces the design of the
tool and realizes automatically on the basis of JSP webpage of the template and label storehouse, put forward concrete design philosophy and implementation method .
With the popularization of WWW (World Wide Web ), the technology of the dynamic webpage is developed rapidly too. From original CGI (Common Gateway In-terface ) to ASP (Active Server Page ), have met the webpage developer to the demand for developing technology of the dynamic webpage to a certain extent. But no matter CGI or ASP have certain limitation, for instance, consuming to resources of the server of CGI, ASP can only be used etc. with Microsoft IIS, all these have limited scope of application of the technology, have hindered their popularization greatly. The vast page developers all look forward to a kind of unified page and develop technology earnestly, characteristic that this technology there should be:①Have nothing to do with the operating platform, can run on any Web or the application program server ; ②Show the logic and page of application program that separates ; ③Offer codes to put in an position, simplify and develop the course based on interactive application program of Web.
JSP (Java Server Page ) technology is designed and used for responding to the request that like this. JSP is developed technology by the new webpage that Sun MicroSystem Company put out in June of 1999, it is that Web based on Java Serv-let and the whole Java system develops technology, and Servlet2. Expansion of 1API. Utilize this technology, can set up advancedly , safely and stepping dynamic websites of the platform .
Java is the future mainstream to develop technology , have a lot of advantages . JSP is Java important application technology on Internet/Intranet Web , get extensive support and admit, it can conbine with various kinds of Java technology together intactly , thus realize very complicated application.
As a kind of technology of development based on text , taking showing as centre, JSP has offered all advantages of Java Servlet. Logic function in order to make sure and showing the function was separated , JSP can already work with JavaBeans , Enterprise JavaBeans (EJB ) and Servlet . The developer of JSP can finish the work that majority and website's logic are correlated with through using JavaBeans , EJB and Servlet , and only assign the work shown to JSP page to finish. Content and show advantage that logic separate lie in , upgrade person , page of appearance needn't understand Java code , the personnel upgrading Javas needn't be experts who design webpage either. This can define Web template in JSP page with Javas , in order to set up websites made up of a page with similar appearance. Java completion data offer, have Java code among template, this mean template these can write by one HTML person is it maintain to come.
JSP develops technology as the webpage of the mainstream at present, has the following characteristics:
(1) Separate the formulation and showing of the content : Using JSP technology, the page developer of Web can use HTML or XML identification to design and format the final page . Use JSP identification or bound foot turn into dynamic content of page actually (whether content according to is it come change to ask). Produce logic of content of the identification and JavaBeans package , truss up of the little script encapsulation, all scripts run in the end of the server. If key logic among identification and JavaBeans, then other people, such as Web administrative staff and page designer encapsulation, can edit and use JSP page , and does not influence
the
formulation
of
the
content
.
(2) Emphasize the reusable package : Most JSP pages depend on the reusable one, the package stepping the platform finish more complicated treatment with required application program. Benefitting from the independence of operating platform of Java, the developer can be very convenient to share and exchange and carry out the ordinary package that operated, or make these packages used by more users. The method based on package has accelerated the total development course, the efficiency of improving the project and developing wholly greatly.
Though JSP is powerful, it requires the webpage developer should be quite familiar with Java. There are still relatively few Java programmers now, for general webpage developer, the grammar of JSP is more difficult to grasp . So, need a kind of webpage developing instrument and offer commonly used JSP application to general webpage developer, is it understand general page develop developer of technology (HTML ) can use strong function of JSP too only to let.
Systematic design object and main technology of use: (1)Design object
System this design object for understand but HTML understand general webpage developer of JSP offer a webpage developing instrument at all only, enable them to follow the systematic file, use the daily function of JSP through the label, produce one finally and only include static HTML and dynamic JSP webpage of JSP label.
(2)Main technology
This system is in the design, consider using the technology of the template and JSP label to realize mainly.
1、Technology of the template
The technology of the template is widely applied to various kinds of development and application system. It produces some commonly used frame structure in advance , uses the family to choose the template from the template storehouse conveniently according to the needs of one's own one, is it is it put up to go again by oneself to need , save construction period in user , facilitate use of user. In this system , classify the page according to the function type , sum up the
commonly used page type, produce the template storehouse. 2、Storehouse technology of the label
In JSP, movements can create and visit the language target of the procedure and influence the element exported and flowed. JSP has defined six standard movements. Except six standard movement these, user can define own movement finish the specific function. These movements are known as the customer movement, they are the reusable procedure module . Through movement these, programmer can some encapsulation stand up too display function of page in JSP page, make the whole page more succinct and easier to maintain. In a JSP page, movements were transfered through the customer label in these customers. And the label storehouse (Tag Library ) is the set of the customer label.
JSP label storehouse is that one kind produces the method based on script of XML through JavaBeans. It is one of the greatest characteristics of JSP. Through the label storehouse , can expand JSP application unrestrictedly , finish any complicated application demand. JSP label storehouse has the following characteristic:
① Easy to use: The labels in JSP and general HTML marks are totally the same in appearance, it is
as
convenient
as
ordinary
HTML
mark
to
use.
②The easy code is paid most attention to: Every label in the label storehouse can finish certain function . Define ready to eat one label storehouse , is it pack one Jar file the label storehouse to need only, then only need use this label storehouse in other systems afterwards, needn't develop codes again , has raised the system and developed efficiency greatly, have reduced the development
cost.
③ The easy code is safeguarded: All application logic is encapsulated in label processor and JavaBeans, all labels concentrate on a label storehouse. If need to upgrade codes or need to revise the function on a webpage, only need to revise the corresponding label. Maintain way in unison through this kind , it is unnecessary in each webpage is it is it fix to act as to get onning, have reduce the work load safeguarded greatly, has economized the cost of safeguarding. ④The easy system is expanded : If need to add the new function to the system , only need to define a new label to finish this function, do not need to do any change to other respects of the system. Can inherit JSP normal characteristics of various fields in the label storehouse. Can expand and increase the function of JSP unrestrictedly like this, and does not need to wait for the appearance of the next edition JSP .
Systematic composition and realizing: (1)The system making up
This system is made up of four parts mainly:
1、The database joins some: This system supports several daily databases , including Oracle, Sybase, MSSQLServer, MySQL and DB2, use JDBC and database to link to each other according to database type and database name , user name , password that users offer that users choose. 2、The basic form of system produces some: After joining with the database , produce the basic form TC-Tables and TC-Columns of two systems according to the user name linking to each other with the database , TC-Tables form includes English name , Chinese name and some attribute of form belonging to this user in this database , for instance can revise , can inquire about ; The Chinese and English name of the row and some other attribute that TC-Columns form includes belonging to all forms of this user's in this database . For instance can show , can inquire about . Basic information of the database that these basic forms of two systems provide to user's institute for
use
in
the
course
of
development
of
the
whole
system.
3、The template is chosen to produce some with the webpage: This part is a key part of a system. It
includes
two
pieces
of
sub
module
.
① The template is chosen some: The system offers the template to user and chooses the interface, let users choose the templates used from the template storehouse according to the need. ② The template is dealt with some: According to template that user choose, system transfer designated template deal with module is it punish to go on to these template. When dealing with the label that the procedure meets in the template, offer the mutual interface to user, let user input parameter for designated label , prove system validity of label that user input. Finished the formulation
of
JSP
page
systematically
finally.
Webpage preview is with revising some: After the webpage was produced out, the system has offered a webpage preview window and code to user and looked over that revises the window. Through this preview window, users can look at the result of JSP page produced out in advance . If user static result of respect in page very satisfied, user can through code look over revise window revise HTML code of code. If users have further demands for the static result of the page, the system has also offered a piece of interface which transfers DreamWeaver editing machine to user, users can use it to carry on further modification and perfection to the static result of JSP page that is produced out .
(2)Systematic realization
1、Realization of the template storehouse and label storehouse
The planning and design of the label storehouse are essential in the whole system design, efficiency that the degree and system that are put in an position have operated that its relation has reached
codes.
Its
planning
should
follow
the
following
principle
.
(1) Should try one's best little including static HTML among label. To general user, the label is
transparent. Users can not look over and revise labels . If include too many static HT-ML sentence in the label , will influence the modification and perfection of user's static result to the page, limit the
use
of
the
label.
(2) Try one's best to raise the paying most attention to degree of the code. Is it is it is it is it is it is it get to JSP public JSP out to withdraw to use to try one's best to classify to go on to use, form labels. Do not use and realize this application repeatedly in each label . While revising and perfecting to using like this , only need to revise this label, maintenance of the easy code. (3) Facilitate users' use. While designing the label storehouse , should fully consider users' operating position , it can very easy and understanding and using labels conveniently to use the family.
① Definition of the label storehouse: Define a label storehouse, must define a label storehouse and describe the file (TLD ) at first . This is a file of script based on XML, have defined the edition of XML in this file , codes used, the edition , name and definition and parameter of all labels included in this storehouse of the label storehouse of the edition of the label storehouse , JSP used describe, including the name of the label, corresponding Javas of label, description information
of
the
label
,etc..
② Realization of the label: One label first special Java type, this each must inherit TagSupports , this each is in javax. servlet. jsp. Define in tagextbag . In the labels, the parameter which includes this label initializes the subject treatment method (Handler ) of method (Set/Get ) , label and method
available
for
making
the
first
class
label
to
adjust,etc..
③ Realization of the template : A template is that one contains JSP file that labels quoted . In order to quote the labels defined in the template , must introduce the label storehouse at first . <%@tagliburi=“tag.tld”prefix=“ctag”%> Among them uri appoints the label storehouse to describe the route of the file ; Prefixes used when prefix
appoints
to
quote
labels.
While quoting the designated label in the template , use the designated prefix while introducing the label storehouse, appoint the name of the label; It is the parameter assignment of the label. 2、Systematic development environment
What this systematic subject procedure making is used is JBuilder 6 of Borland Company. 0, it is Front-Page2000 of Microsoft Company that the template is developed and used, what the label storehouse is developed and used is UltraEdit editing machine, what JDK is adopted is JDK1. 4. The system testing environment is JRun3. 0.
Java future mainstream to develop language, and Java using JSP will become major technology that Web will be developed in the future too mainly at Web. This system has adopted
the label storehouse , one of the biggest characteristics of JSP, enable the general Web developer to use JSP strong dynamic page function conveniently too, develop JSP dynamic Web page of the modern techniques. Because this system adopts Java to develop, can run under the operating system of any support graphic interface , have realized complete having nothing to do with the platform. This system is easy to expand and perfect. Can consider offering the interface to user afterwards , will use the family to expand the template storehouse and label storehouse by oneself, strengthen the systematic function further.
因篇幅问题不能全部显示,请点此查看更多更全内容