分享
 
 
 

应用BEAWorkShopJSPEditor开发Web应用

王朝java/jsp·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

BEA WorkShop JSP Editor是一款优秀的开发工具,支持基于JSP、Servlet和JSTL标签库的Web应用开发。BEA WorkShop JSP Editor提供了非常好的图形化界面协助我们开发Web应用,在开始开发工作之前,我们花些时间来了解一下BEA WorkShop JSP Editor的界面特性。

本文中假定您对BEA WorkShop JSP Editor有所了解,已经安装和配置好BEA WorkShop JSP Editor,并且使用BEA WorkShop JSP Editor提供的向导已经创建一个Web工程,如果您还没有达到要求,请参考另外的一篇文章《安装和配置BEA WorkShop JSP Editor》

透视图

BEA WorkShop JSP Editor开发工具提供了一个独有的Workshop透视图来辅助Web应用的开发,Workshop透视图中组合了BEA WorkShop JSP Editor提供的视图界面。下面这个图片是该透视图的显示全景。

如果您的Web应用没有默认使用Workshop透视图打开,你可以单击菜单WindowàShow ViewàOther…,然后在弹出窗口中选择WorkshopàAppXplorer打开Workshop透视图。

视图

从上面的图片中我们可以看到Workshop透视图中比较独特的视图包括AppXplorer、variables、Tag Libraries、Properties。

AppXplorer视图

AppXplorer视图是BEA WorkShop JSP Editor特别提供的视图,用于在Web应用中快速浏览和导航,其中的web节点是当前Web应用中的除用户自定义Java类和接口外所有其他资源的根节点,包括JSP文件、HTML文件、标签库tld文件等等,web/WEB-INF/src/java是所有用户自定义Java类和接口的根节点,Referenced Types是Web应用中所有用户自定义Java类的根节点(不显示包信息)。

Variables视图

Variables是BEA WorkShop JSP Editor特别提供的视图,而不是Eclipse工具中的variables视图,Variables视图用于显示用户打开JSP页面中所声明的Java对象,包括使用<jsp:useBean>声明的对象和在Java Scriptlet中声明的对象。通过单击Java对象对应的节点,还可以查看该对象的属性。

Tag Libraries视图

Tag Libraries也是BEA WorkShop JSP Editor特别提供的视图,用于提供标签的可视化操作界面,Tag Libraries提供了所有JSP默认提供的标签和JSTL中提供的标签,开发者通过单击Tag Libraries中的图标向JSP页面中指定位置增加标签。

Properties视图

BEA WorkShop JSP Editor透视图中的Properties视图继承自Eclipse中的Properties视图,但是提供了更多的功能。当开发者选择的是JSP页面中的元素时,Properties视图包括了Property Sheet和Smart Editor标签。Property Sheet标签中将显示该元素可以设置的所有属性列表,而Smart Editor标签中则只是显示部分常见的属性列表。

编辑器

为了简化开发,BEA WorkShop JSP Editor中提供了两个非常好的编辑器,一个是Workshop XML Editor和Workshop JSP Editor。

Workshop JSP Editor

这个就是我们关注的重点了,它为JSP文件提供了一个可视化的编辑器,提供Design、Source和Design/Source三种编辑模式。他的主要特点包括:

编辑过程中直接显示资源文件中的内容

使用各种图标可视化的显示JSP文件中的所有标签

结合Tag Liberaries视图可以可视化地向JSP Editor中增加标签

结合Properties视图可以可视化的修改JSP文件中所有标签的属性

Workshop XML Editor

Workshop XML Editor是BEA WorkShop JSP Editor中提供的编辑Web应用中XML文件的编辑器,可以可视化的编辑web.xml和tag lib描述符文件,XML Editor同样提供可视化编辑和源(Source)两种编辑模式。下面这两个图是使用XML Editor编辑器编辑web.xml和JSTL中的c.tld文件时的截屏图。

除此之外,JSP Editor中还提供了很多弹出框来协助我们完成开发、配置工作,尽量减少代码编写。

应用JSP Editor开发Web应用

下面我们通过一个简单Web应用的开发过程来简单的说明和演示如何使用JSP Editor开发Web应用。为了说明的简单,我们仅仅模拟实现用户注册的过程,提供用户输入注册信息的界面,然后使用另外的一个JSP页面处理用户的输入,处理过程也仅仅是在控制台打印用户输入的信息。

创建用户类

你可以在AppXplorer视图中工程的根图标或者是工程下的web/WEB-INF/src/java节点单击鼠标右键,选择NewàClass创建类。为了说明的简单,用户类将只有两个属性:name和passowrd,用户类的源代码如下: /**

* User.java

* 2005-11-16/22:15:23 created by King Xiao

*

* @author King Xiao

* powered By www.vivianj.org

*/

package org.vivianj.workshop.jspeditor.examples;

import java.io.Serializable;

/**

* User 用于表征系统中用户输入的注册信息

*/

public class User implements Serializable {

static final long serialVersionUID = 1L;

/* 用户登录名 */

private String name;

/* 用户密码 */

private String password;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getPassword() {

return password;

}

public void setPassword(String password) {

this.password = password;

}

}

创建用户操作类

创建用户操作类的方式和创建用户类的方式一致。为了说明的简单,用户操作类只提供一个createUser方法,实现的功能是将用户输入的信息输出到控制台上。

/**

* UserDAO.java

* 2005-11-16/22:39:10 created by King Xiao

*

* @author King Xiao

* powered By www.vivianj.org

*/

package org.vivianj.workshop.jspeditor.examples.dao.impl;

import org.vivianj.workshop.jspeditor.examples.User;

/**

* UserDAO 用于实现对User类的所有操作

*/

public class UserDAO {

/**

* 创建新的用户

*

* @param user

*/

public void createUser(User user) {

System.out.println("********************");

System.out.println("增加新的用户:");

System.out.println("------用户名:" + user.getName());

System.out.println("------密码:" + user.getPassword());

System.out.println("********************");

}

}register= \ u7528 \ u6237 \ u6ce8 \ u518c

userid= \ u7528 \ u6237 \ u7f16 \ u53f7

username=\u7528 \ u6237 \ u540d

password=\ u5bc6 \u7801

commit=\ u63d0 \ u4ea4

reset=\ u53d6 \ u6d88

ok=\ u6210 \ u529f

如何准备资源文件?

这里给大家介绍一种简单的准备资源文件的方法。

准备中文内容

在web/WEB-INF/src/java/resources目录下建立文本文件cn.txt,文件的内容如下:

label=你好!欢迎您了解页面流!

将资源文件转化为unicode码

打开一个Dos窗口,进入web/WEB-INF/src/java/resources目录下,将%JAVA_HOME%/bin目录加入path环境变量,然后执行native2ascii命令:

set path=%path%;%JAVA_HOME%bin

native2ascii ?encoding gb2312 cn.txt application.properties

命令执行完后将在global目录下生成一个名为application.properties的文件,文件内的中文都已经变成了unicode表示,上面的那个文件转化后内容应该如下所示:

label= \ u4f60 \ u597d \ uff01 \ u6b22 \ u8fce \ u60a8 \ u4e86 \ u89e3 \ u9875 \ u9762 \ u6d41 \ uff01

完成上面的工作后,我们就开始进入JSP Editor的世界了,下面的这两个步骤充分的显示了JSP Editor的特色。

创建JSP文件

现在我们开始准备接收用户输入的JSP文件register.jsp和处理用户输入的JSP文件registeraction.jsp。

在AppXplorer视图中web节点上单击鼠标右键,选择New Web Artifact…。

我们将看到系统弹出新建对象类型选择界面,选择其中的JSP Page,单击“Next>”按钮。

输入文件名register,单击“Finish”按钮完成创建工作。使用同样的方式,我们可以创建registeraction.jsp文件。

设计register.jsp

register.jsp文件将接收用户输入的信息,页面上包含一个Form标签、两个输入框、一个确认提交的按钮,除此之外,页面上还有很多提示信息,下面将介绍如何使用JSP Editor提供的视图来可视化的完成这些工作。

添加Form

使用Workshop JSP Editor打开register.jsp文件,在Tag Liberaries视图中展开HTML节点,单击

图标。

系统弹出Form的属性设置窗口,单击窗口中的

,在弹出的文件选择窗口中选择registeraction.jsp。

单击OK按钮关闭文件选择框,在Form属性设置窗口中选择Method为post,单击OK关闭Form设置窗口。

现在JSP Editor编辑器中的register.jsp文件设计界面看起来是下图这个样子。

添加显示文本

界面上可显示的文本都保存在资源文件中,JSTL中可以使用fmt:messge标签来显示资源文件中的内容,下面我们就演示如何在JSP Editor中完成这部份开发工作。

将鼠标定位在register.jsp设计图中的虚线框内,然后在Tag Libraries视图中展开JSTL Formatting。

单击

图标,在弹出的Message属性设置框中单击
,在弹出的资源选择框中选择username。

单击OK按钮关闭资源选择框,单击OK按钮关闭Message属性设置框。

回到JSP页面中,在键盘上敲击“回车”键,随后重复上面的动作,只是在弹出的资源选择框中选择password。

现在JSP Editor编辑器中的register.jsp文件设计界面看起来是下图这个样子。

添加接收用户输入的文本框

将鼠标定位到“用户名”后面,在Tag Libraries视图中展开HTML标签。

单击

图标,在弹出的属性设置框name域中输入username。

单击OK按钮关闭属性设置框。

添加接收用户输入的密码框

将鼠标定位到“密码”后面,在Tag Libraries视图中单击

图标,在弹出的属性设置框name域中输入password。

单击OK按钮关闭属性设置框。

添加确认按钮

紧跟上面的步骤,在Tag Libraries视图中单击

图标,在弹出的属性设置框type

域中单击Label域后面的

图标,在弹出的绑定选择窗口中单击Resources标签,选择commit。

单击OK关闭绑定选择窗口,再单击OK关闭按钮的属性窗口。

现在JSP Editor编辑器中的register.jsp文件设计界面看起来是下图这个样子。

设计registeraction.jsp

registeraction.jsp中实现的逻辑是接受用户输入,根据用户输入的信息创建User对象,然后调用UserDAO对象的createUser方法完成业务逻辑,下面我们将演示如何使用JSP Editor来可视化的完成这些工作。

创建User对象

使用Workshop JSP Editor打开registeraction.jsp文件,在Tag Libraries视图中展开JSP标签。

单击

图标,系统将弹出标签的属性设置界面,在id域中输入user(id就是该对象在JSP页面中的变量名),在Class域中输入org.vivianj.workshop.jspeditor.examples.User。

单击OK关闭属性设置界面。

创建UserDAO对象

使用步骤1中同样的方法创建一个UserDAO对象,只是id域中输入userDAO,Class域中输入org.vivianj.workshop.jspeditor.examples.dao.impl.UserDAO。

为User对象赋值

首先,我们为User对象的name属性赋值,所赋的值来自于用户的输入。单击Tag Libraries视图中

图标,系统弹出标签的属性设置框,在value域中输入<%= request.getParameter("username")%>,单击窗口中的
图标,弹出框中将使用树的形式显示当前页面中所有可选对象和他的属性,选择user节点下的name节点。

一直单击OK关闭所有窗口。

采用和上面基本类似的步骤可以完成为User对象的password属性赋值。

调用相关业务方法

现在我们需要完成对象业务方法的调用,这部份工作必须使用源代码模式修改JSP文件的原代码才能完成。

单击编辑器下部的Source标签进入源代码工作模式,在JSP文件中增加一个语句userDAO.createUser(user);整个JSP文件的内容如下:

现在我们可以按照《安装和配置BEA WorkShop JSP Editor》中介绍的方法将这个Web应用部署到Tomcat上,然后访问http://localhost:8080/nitrox/register.jsp开始测试. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<%@ page language="java" contentType="text/html; charset=gb2312" %>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>Untitled Document</title>

</head>

<body>

<jsp:useBean id="user" class="org.vivianj.workshop.jspeditor.examples.User"/>

<jsp:useBean id="userDAO" class="org.vivianj.workshop.jspeditor.examples.dao.impl.UserDAO"/>

<jsp:setProperty name="user" property="name" value='<%= request.getParameter("username")%>'/>

<jsp:setProperty name="user" property="password" value='<%= request.getParameter("password")%>'/>

<%

userDAO.createUser(user);

%>

</body>

</html>

总结

纵观整个Web应用的开发过程,除了Java类的开发和业务方法调用之外,其它如Web页面和页面中的对象处理,我们都使用可视化的方式完成,这种方式降低了Web应用开发的难度,也降低了可能出现的人为错误。

本文中使用简单的例子来说明了如何使用BEA WorkShop JSP Editor中提供的视图和其它可视化元素来完成Web应用开发,BEA WorkShop JSP Editor中提供的可视化元素和功能远不止本文中演示的这么多,大家可以参考本文中的使用方式和BEA WorkShop JSP Editor的帮助文档完成更多的开发内容,希望大家能够享受BEA WorkShop JSP Editor为我们带来的方便。

作者简介

唯J族(www.vivianj.org)创始人,BEA 杭州User Group负责人,自由撰稿人,开源项目BuildFileDesigner

(buildfiledesign.sourceforge.net)和V-Security(v-security.sourceforge.net)创始人。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有