struts2的第一个应用(hello world)(根据传智播客相关视频整理)

1.新建一个web项目,取名为struts2.
2.加入struts2的相关jar文件,将struts.xml文件拷贝进src目录下。将修改过的web.xml文件拷贝至struts2/WebRoot/WEB-INF/下。
3.新建一个Action:HelloWorldAction。其代码如下:

 1 package  com.xiaobai.struts.action;
 2
 3 public   class  HelloWorldAction  {
 4    private String msg;
 5    
 6    public String getMessage() {
 7        return msg;
 8    }

 9
10    public String execute(){
11        msg = "我的第一个struts2应用";
12        return "success";
13    }

14}
4.修改strut.xml文件:在<struts></struts>标签对中加入以下配置:
1 < package  name ="hello"  namespace ="/action"  extends ="struts-default" >
2      < action  name ="helloworld"  class ="com.xiaobai.struts.action.HelloWorldAction"  method ="execute" >
3      < result  name ="success" > /WEB-INF/page/hello.jsp </ result >
4      </ action >
5 </ package >

5.部署该项目。并且启动Tomcat服务器,访问 http://localhost:8080/struts2/action/helloworld
看到如下图所示的结果:


下面对写的代码及配置做一点解释:
1.<package>标签的namespace属性可以作为action访问路径的一部分。不设置该属性或将其设置为""(空字符串)则为默认命名空间。例如上面的package属性设置为"/action",action标签的name属性设置为"helloworld",所以访问该action的路径应为/action/helloworld,这也就是上面这个应用的访问地址是 http://localhost:8080/struts2/action/helloworld的原因。
2.一般情况下,package都应当继承自struts-default包,即,将package的extends属性设置为"struts-default",这样才能获得struts2的许多功能。
3.action的method属性主要是定义将请求交给action中的哪个方法来处理。
4.result标签中的name属性值对应action中的处理方法(这里是execute方法)的返回值,用来定义在该返回值的情况下如何进行转向。
   上面的应用中的jsp文件放置在WEB-INF文件下,主要是为了不让用户直接访问到jsp页面,而是通过访问action,并通过action的控制来访问信息。
   (ps:用户直接访问jsp文件也无法获得msg的值)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值