传智播客-struts2(1)-配置文件里的常量、视图和通配符应用
来源:互联网 发布:mac键盘灯禁止符号 编辑:程序博客网 时间:2024/05/18 09:05
struts2课程是张孝祥老师讲解的。张老师的技术实力自不必说,讲课水平也是一流。因为客观地,技术本身多少有些枯燥,如果只是纯讲技术点,学员可能听起来会有些吃力,也容易犯困,但是这个问题在张老师面前则迎刃而解。因为张老师不仅对技术了解透彻,而且因为其丰富的经验和阅历,每讲一个技术点,都可以用生活中大家易知易懂的事实举例,信手拈来,既加速理解又便于记忆。当然,张老师讲课不仅长于讲故事打比方,而且相当细致严谨,在讲课的过程中,时不时可能会遇到新的问题,每次新解决一个问题,都会补充记录在自己的ppt上,同时特别注意思路的讲解。
其实学到现在,已经明白一个基本的事实:很多框架,搭建其环境的时候,两个要素必不可缺,一是jar包,二是配置文件。struts2(我们学的版本是2.1.8.1)的配置文件不少,每个文件里的配置项也不少,就不一一叙述了,下面挑几个用途广泛而且应用方便的内容讲讲,更多内容就看文档吧:)
常量
首先,当我们学习一个框架的时,一般可以参考框架自带的示例项目。例如struts2,刚入门的时候,可以参考其自带的blank项目。当部署完这个项目后,开启tomcat服务,在地址栏里输入请求的action路径时,可以发现,虽然没有给该action定义扩展名,但是地址里输入的action路径没有扩展名或者扩展名为action时都可以通过。为什么呢?这是由struts2的默认配置属性决定的。
常量的默认配置在struts2-core-2.1.8.1/org/apache/struts2/default.properties文件里,像定义访问action的默认扩展名、开发模式设置、i18n以及默认字符编码等等,例如struts.action.extension=action,,。
应当注意的是,一般情况不要修改框架系统的原始文件,如果要更改默认的配置项,可以采用覆盖的方式。struts.xml是struts2的基本配置文件之一。该文件内可以配置多个常量,以覆盖默认的常量配置,例如<constant name="struts.action.extension" value="do,," />表示action的可用扩展名为do或者不用扩展名。
常量可以在下面多个文件中进行定义,struts2加载常量的搜索顺序如下,后面的设置可以覆盖前面的设置:
default.properties文件
struts-default.xml
struts-plugin.xml
struts.xml
struts.properties(为了与webwork向后兼容而提供)
web.xml
视图
struts2丰富了支持的视图类型,具体内容可以参见文档的“Result Types”部分。这里只记录两点:
1、文档里列出的视图类型中有一种是“plaintext”,但实际在配置文件里配置的时候,应该是“plainText”,可以从struts2-core-2.1.8.1/struts-default.xml文件中<result-types>元素下内容求证。
2、struts2允许用户自定义类型,但无论那种类型的视图,表示该视图的类都需要实现com.opensymphony.xwork2.Result接口。
通配符应用
<action name="*_*" class="cn.itcast.struts2demo.web.struts2.actions.HelloWorldAction" method="{1}">
<result name="success" type="dispatcher">
<param name="location">/WEB-INF/pages/hello/{2}.jsp</param>
</result>
</action>
上文是struts.xml里action的配置。如果从地址栏输入以下内容:
http://localhost:8080/项目名/namespace/sayHello2_view1
调用的是方法sayHello2,展示的是视图view1。
如果该方法没有指定,则默认调用execute方法,没有的话抛NoSuchMethodException异常。
不过现在一般规范编程都只用一个“*”,然后方法名和视图名相同。当然,也可以用“*”定义目录名,例如<param name="location">/WEB-INF/pages/{2}/view1.jsp</param>。
此外,应用通配符时,struts2可以忽略下划线:
productCreate(类名)--product* (action name)--product(路径)
product_Create(类名)--product_* (action name)--product(路径)
以上两种方式均可。
- 传智播客-struts2(1)-配置文件里的常量、视图和通配符应用
- Struts2中的通配符和常量的说明
- Struts2为应用指定多个配置文件和动态方法调用以及通配符的使用方法
- 传智播客 struts2视图result的种类和常量总结
- struts2--配置文件通配符的使用
- Struts2配置文件通配符的使用
- 传智播客--struts2.x的常量配置,动态方法调用,通配符,拦截器,ValueStack和标签
- struts2的通配符的应用
- struts2视图result的种类和常量总结(转载)
- Struts2配置文件中的通配符的使用
- struts2-配置文件中通配符的使用
- Struts2——(2)配置文件、通配符
- struts2.x的常量配置,动态方法调用,通配符,拦截器,ValueStack和标签
- Struts2 入门(三) 之 配置文件的常量设置
- Struts2应用的配置文件
- Struts2第三篇【Action开发方式、通配符、Struts常量、跳转全局视图、action节点默认配置】
- Struts2的一些常量和含义的应用
- struts2中配置文件的常量使用方法
- [wxWdiget]使用wxBoxSizer编程
- 一老师整理出来的C#学习网站,对大家很有帮助的
- TO_CHAR(date[,fmt,[,nls_param]])、TO_DATE(char[,fmt[,nls_param]])函数2010.01.27_2
- SAR数据模拟的一点想法
- 在UltraEdit的查找和替换中使用正则表达式 (转)
- 传智播客-struts2(1)-配置文件里的常量、视图和通配符应用
- js实现横向导航栏
- 关于解决假死锁的设想
- 自定义手机软件卸载是执行的操作
- weblogic8.1-axis2使用
- 系统启动时出现"Exiting Intel Boot Agent"问题解决一例
- 用队列实现贪吃蛇游戏逻辑
- Freescale WinCE6.0开发板IMX51初步使用
- PHP的语言构成与工作原理