使用契约优于配置的方式开发Struts2的MVC程序(二) ---action

上一个实例中已经演示过了jsp页面是如何使用契约优先得方式访问,主要通过访问jsp页面来检查环境配置是否完好。本次重点介绍如何使用契约优先的方式访问Action,下面就开始:

         第一:创建一个普通的Action类,命名FirstAction,代码如下:

         packagecom.xt.s2conversion02.actions;

 

import com.opensymphony.xwork2.ActionSupport;

 

public class FirstAction extends ActionSupport {

 

         @Override

         public Stringexecute() throws Exception {

                   System.out.println("executein FirstAction#execute!");

                   //本例只想重点演示如何通过URL访问到我们的Action,至于视图的显示后面

//再说,所以只返回null

                   return null;

         }

 

}

以上代码注意观察标注红色地方,即actions,因为在struts2的官方文档中有这么一句First the Convention plugin finds packages named struts, struts2, action or actions.意思是说Convention plugin只会把位于strutsstruts2、action和actions这几个包中的action进行预处理(即可以通过特定的url来访问action不需要额外配置),所以我们要注意,如果你的Action放在除以上几个包的其他包中,很可能失败。

第二:访问测试---打开浏览器输入http://yourhost:yourport/yourappname/first   至于yourhost之类的是什么意思,可以参照之前的一篇里面的解释,这里不再赘述。我这里使用的是:http://localhost:8080/s2conversion02/first。结果如图

当然网页中没有内容,以为之前解释过,FirstAction没有跳转到任何视图,而且FirstAction本身也没有输出任何信息所以整个页面是空白的。但是在控制台输出了“execute in FirstAction#execute!”可以说明Action访问是成功的!通过上面的结果可以看出来,struts2的url生成规律是把XXXAction映射成xXX。

         第三:补充----如果有更多其他的Action位于actions子包下面,例如:

        

类的完整名称

映射的命名空间

映射的URL

com.ghpan.actions.MainAction

/

/main
com.ghpan.actions.products.Display(补充Display实现Action接口)

/products

/products/display
com.ghpan.struts.company.details.ShowCompanyDetailsAction

 

/company/details

 

/company/details/show-company-details

 

         通过上面的表格我想坑定能够彻底明白conversion plugin的url映射规律了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值