锁定老帖子 主题:《Struts2技术内幕》 新书样章和导读
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2011-12-03
您好,有个问题向您请教。我在s,t,u,r,ts2中应用了site,mesh,装饰器 装饰页面,怎么装饰action传参之后的页面,问下d,e,c,o,r,a,t,o,s。x,m,l 怎么配置?
|
|
返回顶楼 | |
发表时间:2011-12-19
最后修改:2011-12-19
《Struts2技术内幕》 新书部分篇章连载(四)
博客分类: JavaStruts2 9.2核心分发器 —— Dispatcher http://downpour.iteye.com/blog/1219253 引用 这个非常惹眼的内部变量instance,它不仅是一个静态的实例变量,同时它也被定义成为ThreadLocal类型,而ThreadLocal所承载的实际类型是Dispatcher本身!这正是一个典型的ThreadLocal模式的应用范例! 从这个数据结构的定义来看,我们可以确认,Struts2对Dispatcher应用了ThreadLocal模式。其中,Dispatcher本身就是实现ThreadLocal模式的核心要素,因为我们实际上在Dispatcher中看到了实现ThreadLocal模式的两大步骤。在之后的源码分析中,我们还将看到Dispatcher在处理Http请求时与ThreadLocal变量的交互过程。 使用ThreadLocal模式的初衷是为了解决多线程环境下对象访问的线程安全问题。Dispatcher作为核心分发器,成为了入口程序StrutsPrepareAndExecuteFilter中的实例变量PrepareOperations和ExecuteOperations的实际操作句柄(Dispatcher是它们的重要实例变量),从而被所有的线程共享访问。因此,Dispatcher被打造成ThreadLocal模式是一个理所当然的选择。 然而,这一理所当然的选择,却使得Struts2能够摆脱传统的表示层框架对于Web容器的高度依赖。由此可见,ThreadLocal模式是贯穿整个Struts2的核心技术之一,成为了Struts2将Web容器与Java开发解耦合的内在基础。不仅如此,我们还将在之后的章节中看到ThreadLocal模式在Struts2数据流转的过程中所起到的决定性作用。 这段要好好研究。尤其是这一句。 这一理所当然的选择,却使得Struts2能够摆脱传统的表示层框架对于Web容器的高度依赖。 |
|
返回顶楼 | |
发表时间:2012-02-23
mlw2000 写道 KimHo 写道 liguocai2009 写道 激动人心啊。担心楼主爆料太多,书没太多人买~
你担心得太多了 我相信有相当部分的人习惯于阅读纸质书籍,那样才有感觉 同意,一直习惯纸质书籍的感觉 |
|
返回顶楼 | |
发表时间:2012-02-28
您好,我们老师也给我们买了您的书,我想请教一个问题:
请问 struts2做国际化的时候, properties文件有没有能在页面输出换行符的啊? 难道两行的文字只能分成两条语句写在properties中吗? |
|
返回顶楼 | |