我们仍然将分析处于service包中,首分析下上次没有分析的ForumArchiveService:(它只有一个方法)
public interface ForumArchivesService {
public void createForumArchives() throws BbscsException;
}
看applicationContext.xml中:
<bean id="forumArchivesServiceTarget"
class="com.laoer.bbscs.service.imp.ForumA ...
由于BBSCS8是由数据库设计-bean/hbm.xml-DAO-Service-Web(作者laoer回答)这样的创建过程,因此分析这个系统最好是先查看数据库设计(见http://bbs.laoer.com/main-read-15-ff80808113baa8140113d201333e5274.html下载研究),而我的分析是由Service层开始引出讨论的,所以你需对论坛的常用功能有所体会,知道什么是投票贴,怎么样去用,还要有论坛后台管理使用过等等.如果不知道的话,请先在www.laoer.com处或在自己电脑上本地测试以便先对其功能进行体会,请注意!!!
com.laoer.bbs ...
在分析三,我们已经分析出jsp页面如何通过struts2的标签与action配合,将数据在表示层传递(set/get),并且把主要的开始流程给分析完了。这里我们将前台的主要请求大致分析一下:从导航部分开始,对于社区首页in.bbscs我们已经讲过,它这里只不过是将框架的target=mainForm以便从任何位置转到首页!进入个人中心,点击修改签名,触发了signSet.bbscs:
<action name="signSet" class="signSetAction">
<interceptor- ...
经过前面的分析,我们已经理清楚了业务层,接下来的部分将是web层部分.首先我们从web.xml开始,我们知
道任何一个java web应用系统都是从WEB-INF/web.xml启动的,根据servlet2.4规范filter执行是按照
web.xml配置的filter-mapping先后顺序进行执行,这里用了UrlRewriteFilter和字符编码过滤器
CharacterEncodingFilter(UTF-8),还有配置延迟加载时使用OpenSessionInView,可参考资料
http://www.javaeye.com/topic/32001;另外,还有struts-clearu ...
WebWork介绍
WebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目,如下示意图所示:
Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来。Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,强大的表达式语言(OGNL – t ...
Action的单元测试
理解了ServletDispatcher,我们就明白了整个框架调用执行的顺序。Action虽然是与Web无关,可是它的创建、参数设置、执行与我们的WebWork、XWork紧密关联在一起,有我们的控制器ServletDispatcher去统一调度,那我们如何去对Action进行独立的单元测试呢?
请看下面的例子:使用单元测试框架JUnit对register.User. RegisterAction做单元测试
见example.register. RegisterActionTest类testExecuteWithProxyFactory()方法:
...
验证框架
WebWork提供了在Action执行之前,对输入数据的验证功能,它使用了其核心XWork的验证框架。提供了如下功能:
1、 可配置的验证文件。它的验证文件是一个独立的XML配置文件,对验证的添加、修改只需更改配置文件,无需编译任何的Class。
2、 验证文件和被验证的对象完全解藕。验证对象是普通的JavaBean就可以了(可以是FormBean、域对象等),它们不需实现任何额外的方法或继承额外的类。
3、 多种不同的验证方式。因为它验证功能是可以继承的,所以可以用多种不同的方式指定验证文件,比如:通过父类的Action、通过Action、通 ...
/**
* 取得字符串的字节长度
*/
代码
function strlen(str)
{
var i;
var len;
len = 0;
for (i=0;i<str.length;i++)
{
if (str.charCodeAt(i)>255) len+=2; else len++;
}
return len;
}
/*
* 判断是否为数字,是则返回true,否则返回false
*/
代码
fun ...
- 浏览: 17275 次
- 性别:

- 来自: 广州

- 详细资料
搜索本博客
最新评论
-
WebWork教程二
一个字"好". 现在公司正在用这个框架,太感谢楼主了. 希望加我MSN:lei ...
-- by leibin2009 -
对天乙社区bbscs8实现的详 ...
太爽了交个朋友可以吗?? QQ10046417 MSN:kson34@hotma ...
-- by jason34 -
对天乙社区bbscs8实现的详 ...
好东西呀,谢谢!
-- by xp84012493 -
同行一边居左 一边居右 d ...
<div style="float:left;width=100px;bo ...
-- by sgwood -
对天乙社区bbscs8实现的详 ...
非常感谢楼主!
-- by qinghe3012






评论排行榜