分享
 
 
 

AppFuse1.7 Tutorial 之 创建StrutsAction 和 JSP (3)

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

创建Struts Action 和 JSP,主要步骤

[1] Add XDoclet Tags to Person to generate PersonForm

[2] Create skeleton JSPs using XDoclet

[3] Create PersonActionTest to test PersonAction

[4] Create PersonAction

[5] Run PersonActionTest

[6] Clean up the JSP to make it presentable

[7] Create Canoo WebTests to test browser-like actions

· [1] 为Person添加XDoclet Tags来产生PersonForm

在Person.java里面添加XDoclet的标签

@struts.form.include-all="true" extends="BaseForm"

ant compile

· [2] 使用XDoclet 来创建JSP的skeleton(骨架)

在“开始” -> “运行” 里面输入 CMD

进入到你项目的path/extras/viewgen

ant -Dform.name="PersonName" (会产生PersonForm.properties、PersonForm.jsp 、PersonFormList.jsp)

COPY PersonForm.properties 到 web/WEB-INF/class/ApplicationResources_en.properties

· [3] 创建测试PersonAction 的PersonActionTest

做到这里了,我确实对测试没有好感,实在太麻烦了。~~~~~~~~又这个命令那个text.

唉~~~不过专家说好。忽然想起Eason(陈奕迅)的《专家话》这首歌~~~

* 专家的建议 早餐不要悭

一天里面最重要是这个简单习惯

专家的建议 呼吸请你小心

避免吸错了空气的炭 无时和无地

* 十万样做法像是对 但错我也不知

实在没办法辨别每样看法与构思

有专家会蚀言 一些却未能辨

谁是对 或会准 或有偏差 有商确异见 *

..........

早餐不能不吃,专家的话不能不听~~~~程序员还是要写得~~~~¥%…※%×※ 省略几个粗口

1 .在test/web/**/action 目录中创建PersonActionTest.java

专家建议:复制→另存为一个已经有的ActionTest (i.e. UserActionTest) 用[P]erson覆盖 [Uu]se。

2 .在src/dao/**/Constants.java中添加一个变量PERSON_KEY. 名字"personForm"要和struts-config.xml

中配置的form名字一样.

/**

* The request scope attribute that holds the person form.

*/

public static final String PERSON_KEY = "personForm";

如果运行这个测试会有一些错误,因为你还没有创建Action

· [4] 创建PersonAction

创建PersonAction很容易,里面不外乎就是定义一些方法,然后依据 log , message , formbean ,forward 一步一步

没有悬念。

1.在Javadoc 里面定义xdoclet(struts.action)的信息

2.extends BaseAction

3.Create需要的方法 cancel()、delete()、edit()、save()

说明:

convert是转换一个PersonForm或者Person对象,互换。它内部调用ConvertUtil.convert()方法,

并使用BeanUtils.copyProperties 将进行如下转换:POJO → ActionForm,将ActionForm → POJO。

· [5] 运行PersonActionTest

添加示例数据文件(metadata/sql/sample-data.xml)用于测试ActionTest

如果这个表和其他的表用外键/触发器关联,则必须注意表创建的顺序和数据添加的顺序

<table name='person'>

<column>id</column>

<column>first_name</column>

<column>last_name</column>

<row>

<value>1</value>

<value>Matt</value>

<value>Raible</value>

</row>

<row>

<value>2</value>

<value>James</value>

<value>Davidson</value>

</row>

</table>

运行:ant test-web -Dtestcase=PersonAction

· [6] 清理JSP,使它合乎要求 [make it presentable]

把没有用的字段去掉,如id

现在执行ant db-load deploy, 然后启动Tomcat,最后打开浏览器,

输入 http://localhost:8080/appfuse/editPerson.html?id=1 , 你就能看到界面:

注意:如果你改变了web目录下的任何文件,要使用deploy-web target.

否则,使用deploy 编译并部署,我之前就是没有看到这个说明,怎么搞都不行,

很郁闷,根据以前开发EJB的经验,自己delopy一下,就可以了。

· [7] 创建测试Action的Canoo WebTest[可以像浏览器一样测试Action]

省略......偶不喜欢这种JSP的测试方式,就是这样测试了,我还要在JSP上再测试一次

麻烦~~~

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
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- 王朝網路 版權所有