首页 > 其他 > 详细

struts2 入门

时间:2015-07-17 09:49:09      阅读:246      评论:0      收藏:0      [点我收藏+]
1、创建一个action的方式:
    a、普通java类 实现 execute 方法
    b、类实现 Action 接口
    c、继承 ActionSupport 类

2、 action中的方法的调用
    a、 直接调用 execute
    b、通过 method 属性配置要调用的 Action 中的方法 ,通配符 匹配 方法名
    c、DMI : struts.xml的配置中打开动态调用, action名为: Action!方法名


    2.1、链接是跳至同一个 action  ,但是需要不同的操作

    a、通配符解决
        在action类中 实现多个方法 如 add() delete()
        配置struts.xml 的action :name="*_person"  calss="" method="{1}"
        若 action为 add_person ,add匹配上 自己写的actionlei中的 add() 方法名,
            就可以直接调用 add 方法实现链接地址相同而操作不同的执行方式

    b、DMI 动态方法调用   涉及安全性问题,不推荐


    2.2、默认的action的配置:当请求的地址不存在或者没有和当前已有的action匹配成功时,跳转到默认的action
        <default-action-ref name="index" />
    <!-- 配置默认的action,当然需要这个action 是存在的 -->    
        <action name="index">
            <result>
               /index.jsp
            </result>

        </action>

3、struts2 传递参数:     a、简单类型:    表单传参,
            b、对象类型
            c《推荐》、modelDriven 传递复杂类型数据


4、访问 web 对象
    a、通过ActionContext.getContext 得到一个ActionContext对象
        request=(Map<String, Object>) ActionContext.getContext().get("request");
        session= ActionContext.getContext().getSession();
        application=ActionContext.getContext().getApplication();

    b 《推荐》、通过接口,由struts2 注入, map 是struts2 转换了 j2ee对象  底层的回调机制
        实现 XXXAction implements RequestAware  SessionAware ApplicationAware


    c、通过 ServletActionContext.getRequest()  得到一个 HttpServletRequest对象 ,再根据request取到其他的web 对象


    d、通过实现 ServletRequestAware 接口,注入 HttpServletRequest 对象,根据request取到其他的web 对象

 4访问web对象总结:通过接口的实现是 IOC 控制反转方式: inversion of control


版权声明:本文为博主原创文章,未经博主允许不得转载。

struts2 入门

原文:http://blog.csdn.net/emilyrr/article/details/46920153

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!