为了账号安全,请及时绑定邮箱和手机立即绑定

Struts2入门

  • struts2接受参数

    1、使用Action的属性接受参数

    action类直接创建对象实现get/set

    2、使用Domain的Model接受参数

    //创建model对象
    private User user;
    //表单name修改
    用户名:<input type="text" name="username">
    密码:<input type="password" name="password">

    3、使用ModelDriven接受参数

    实现ModelDriven<T>接口,指定泛型类型

    //需要实例化
    private User user=new User();
    
    @Override
    public User getModel() {
        return user;
    }

    对于List<String>对象需要

    <input type="text" name="listbook[0]">

    对于List<User>对象需要

    <input type="text" name="listbook[0].username">


    查看全部
  • //修改.action后缀
    <constant name="struts.action.extension" value="html"></constant>

    默认没有配置后缀,其实不添加.acton后缀也可以访问

    //web.xml也可以配置修改后缀
    <filter>
      <filter-name>struts2</filter-name>
      <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
       <init-param>
         <param-name>struts.action.extension</param-name>
         <param-value>do</param-value>
       </init-param>
    </filter>


    查看全部
  • 默认action配置

    注意需要注释掉使用类名通配符的action配置,否则会去匹配类,报错500

    <default-action-ref name="index">
    </default-action-ref>
    
    <action name="index">
        <result>/error.jsp</result>
    </action>


    查看全部
  • 指定配置文件

    <include file="xml"></include>


    查看全部
  • 动态方法调用

    动态方法调用就是为了解决一个Action对应多个请求的处理,以免Action太多。

    1、指定method属性

    <action name="addaction" method="add" class="com.action.HelloWorldAction">
        <result name="success">/index.jsp</result>
    </action>

    2、感叹号方式

    <constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
    //指定方法返回视图
    public String add(){
        return "add";
    }
    //struts配置多个result,指定name对应的
    视图名称
    <result>/index.jsp</result>
    <result name="add">/index.jsp</result>
    <result name="update">/update.jsp</result>

    访问方式:/helloworld!(方法名).action

    3、通配符方式

    <action name="helloworld_*" method="{1}" class="com.action.HelloWorldAction">
        <result>/index.jsp</result>
        <result name="add">/{1}.jsp</result>
        <result name="update">/{1}.jsp</result>
    </action>
    
    <action name="*_*" method="{2}" class="com.action.{1}Action">
        <result>/index.jsp</result>
        <result name="add">/{2}.jsp</result>
        <result name="update">/{2}.jsp</result>
    </action>


    查看全部
  • Struts2的Action搜索顺序

    localhost:8080/struts/path1/path2/path3/student.action

    第一步:判断package是否存在,如:path1/path2/path3/

    存在package

    第二步:判断action是否存在,不过不存在则去默认namespace的package里寻找action

    第三步:如果没有,则报错

    不存在package

    第二步:检查上一级路径的package是否存在(直到默认namespace),重复第一步

    第三步:如果没有,则报错


    查看全部
  • 1.Struts2访问Servlet API方式

    1、ActionContext

    2、实现Aware接口

    3、ServletActionContext


    查看全部
  • struts.xml

    struts的核心配置文件,在开发过程中利用率最高。

    该文件主要负责管理应用中的Action映射,以及该Action包含的Result定义等。

    struts.properties

    struts2框架的全局属性文件,自动加载

    该文件包含很多个key-value对

    该文件可以配置在struts.xml文件中,使用constant元素。

    查看全部
    0 采集 收起 来源:struts2核心文件

    2019-10-19

  • 从客户端发送请求过来,先经过前端控制器(核心过滤器 StrutsPrepareAndExecuteFilter)过滤器中执行一组拦截器(一组拦截器 就会完成部分功能代码),到底哪些拦截器执行了呢,在Struts2中定义很多拦截器,在其默认栈中的拦截器会得到执行,这个我们可以通过断点调试的方式测试,拦截器执行完成后,就会执行目标Action,在Action中返回一个结果视图,根据Restult的配置进行页面的跳转。

    查看全部
  • MVC模式

    查看全部
    0 采集 收起 来源:MVC模式简介

    2019-10-19

  • result 的type属性默认是dispacher

    查看全部
  • struts2接收list参数

    Action中定义List属性:bookList

    在jsp中使用name:bookList[0]的形式

    查看全部
  • struts.properties的常用配置

    查看全部
  • 加后缀访问,如.html,http://localhost:8080/HelloWord/helloWord.html

    配置方式如下:

    查看全部
  • 默认Action的配置

    用于配置找不到action时的错误页面设置

    查看全部

举报

0/150
提交
取消
课程须知
小伙伴们,学习本课程前需要具备Java Web基础,熟悉JSP和Servlet。
老师告诉你能学到什么?
1、能够对Struts2框架有更深入的了解 2、能够独立编写Struts2程序

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!