Dojo
最新
最佳
搜索
订阅
解道Jdon
架构设计
领域驱动
DDD介绍
DDD专辑
战略建模
领域语言UL
领域事件
商业分析
工作流BPM
规则引擎
架构师观点
数据工程
产品经理
系统思维
微服务
微服务介绍
微服务专辑
模块化设计
SOA
API设计
clean架构
SpringBoot
分布式事务
分布式架构
Kubernetes
DevOps
编程设计
GoF设计模式
模式专辑
面向对象
函数式编程
编程语言比较
编程工具比较
形式逻辑
前端编程
Reactive编程
Jdon框架
Rust语言
人工智能
Web3
模因梗
幽默梗
程序员吐槽
面试技巧
Java入门
数字化转型
认知偏差
道德经
更多话题
to:sam_java
02-10-25
iceant
昨晚想贴的,但是发现贴不了 ^_^
=====================================
ps 1.2 的记不得了, 1.3 的还记得一点。
我只说说 1.3 的大体,其它的看你自已。
1.3 比 1.2 的结构要更清晰, View 和 Logic 都分离得很好。
View(*.screen) 是由TemplateServlet 来处理.
Logic(*.do) 是由 MainServlet 来处理
RequestProcessor 是请求分发器。把接收到的请求分发给在
Mapping.xml 里注册的 HTMLAction.
HTMLAction 接受到请求后产生 Event (这要你自已写)
然后 RequestProcessor 会将 Event 委托给WebController 来处理
WebController 会将 Event 传递给 EJBController.
EJBController 再交给具体的事务处理者 - EJBAction(在mapping.xml里
配)来处理
EJBAction 处理完请求后,将 EventResponse(ER) 返回给HTMLAction.
这条路径是这样的:
ER -> EJBController -> WebController -> RequestProcessor->HTMLAction
HTMLAction按照返回的信息再处理一些显示的准备工作,
然后 MainServlet 接管过控制权,交给 ScreenManager 来显示下一个页面在(Mappings.xml里有配)。
到此,一个*.do的请求结束。
*.screen的和FlowHandler的东东,你要自已看了,总要付出点时间的!
sam_java
2002-10-26 11:45
非常感谢前辈的指导!我还有个疑问:
我正在看112,不知是否应该看1.3?还是说两个结构完全不同,都应该看看?
谢谢!
iceant
2002-10-27 10:24
结构有所改变,不过大致思想没变.
建议你还是花点时间看看 SUN ONE Application Framework (JATO)
但是只能拿到 1.2.1 的代码, 1.2.2 以后的版本 (1.2.2 和 2.0)
就只能拿到 bin 包了.
我现在正在用它做一个项目,非常顺手.
我也在学习中~_~
banq
2002-10-27 17:40
iceant 兄说得不错,我感觉event是 web层和EJb层之间的 联系纽带,现在我有一个疑惑,webcontroll把event传给EjbController,那么具体的OrderEJBAction是如何被激活的?在statemachine中吗?好像这里面有点绕,不知你有否清晰的思路?
iceant
2002-10-27 19:40
是的, EJBAction 是在 StateMachine 里激活的。
这里有几个
设计模式
的应用:
RequestProcessor -> WebController 是 Service Locator 模式
WebController -> EJBController 是 Facade
EJBController -> StateMachine -> EJBAction 是 Command
是不是可以把 StateMachine 去掉? 可以,但是这样做显得设计杂乱.
OO 设计里强调,当你觉得有个地方很 dirty 的时候,就可以试试加一个层. StateMachine 在这里起到了一种承上启下的作用.有它,就显得线路更清晰
sam_java
2002-10-28 00:51
再次感谢!
cc
2002-10-28 10:24
很好,关注中
能否讲一下这种框架(jato)跟petstore的区别?
iceant
2002-10-28 19:42
这就是 PetStore 1.3 啊,我们没有在说 JATO
实际上 JATO 我正在研究中,现在项目紧,没有时间写文章,
等以后有空了再写写。