主要作用:将请求与页面区分开

配  置:

    下载struts 2.0,在安装路径D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps 中解压struts2-blank.war

    将目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF\lib下的所有jar包复制到WebRoot->WEB-INF->lib中

显示提示:(按下Ctrl+/)

    在目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\lib下解压struts2-core-2.3.24.jar

    在myeclipse中如下配置:(location为解压后struts2-core-2.3.24中struts-2.3.dtd)

    

web.xml的配置:

    在目录D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF下打开web.xml,复制其中

    <filter>
          <filter-name>struts2</filter-name>
          <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
      </filter>

  <filter-mapping>
          <filter-name>struts2</filter-name>
          <url-pattern>/*</url-pattern>
      </filter-mapping>

    粘贴到myeclipse的web.xml </web-app>的上方

struts.xml的配置:

    在解压完的文件夹内找到struts.xml,路径为D:\项目学习\三大框架视屏\struts-2.3.24-all\struts-2.3.24\apps\struts2-blank\WEB-INF\src\java

    将struts.xml复制进web project的src目录下,将其struts中的内容全部注释,然后再改写其中内容

struts.xml的改写:    

    <struts></struts>中的内容:

        <constant name="struts.devMode" value="true" />
        <package name="default" namespace="/" extends="struts-default">
        <action name="hello" class="..." method="...">
        <result name="SUCCESS">
        /Hello.jsp
        </result>
        </action>
        </package>

    ①namespce即为访问的action前面的地址,访问此页面网址为http://localhost:8080/struts2/hello(.action),等价于http://localhost:8080/struts2/Hello.jsp

       namespace默认为"",即action前面无论加什么都可以访问

    ②一般packagename与namespace相同,方便区分,例:<package name="hello" namespace="/hello" extends="struts-default">

     此时访问的页面为http://localhost:8080/struts2/hello/hello.action

    ③ 在<action name="user" class="com.struts2.add.AddAction" method="add">中,class是调用com.struts2.add包中的AddAction.java,method是调用的方法

        method也可以不用写,即动态方法调用(DMI)

src中的java程序:

    要继承ActtionSupport类,实现返回值为String的方法:

        public String add(){
            return SUCCESS;
        }

传值:

    在调用的方法中写:

   public class AddAction extends ActionSupport {
      private String msg;
      public String getMsg() {      
          return msg;
      }
      public void setMsg(String msg) {
          this.msg = msg;
      }
      public String execute(){
          msg="what are you 弄啥嘞?";
          return SUCCESS;
      }
    在jsp页面写:

    ${msg}

struts2学习笔记(1)配置与基本操作的更多相关文章

  1. Struts2学习笔记二 配置详解

    Struts2执行流程 1.简单执行流程,如下所示: 在浏览器输入请求地址,首先会被过滤器处理,然后查找主配置文件,然后根据地址栏中输入的/hello去每个package中查找为/hello的name ...

  2. [Struts2学习笔记] -- 环境配置

    在创建好WebProject后,就可以开始进行Struts2的环境配置,可以到Struts2官网下载,本环境使用struts-2.3.24.1版本. 首先导入必要的jar包到WebProject的/W ...

  3. Struts2学习笔记(二)——配置详解

    1.Struts2配置文件加载顺序: default.properties(默认常量配置) struts-default.xml(默认配置文件,主要配置bean和拦截器) struts-plugin. ...

  4. Struts2学习笔记⑧

    今天是Struts2学习笔记的最后一篇文章了.用什么做结尾呢,这两天其实还学了很多东西,没有记录下,今天就查漏补缺一下. 文件上传与下载.FreeMarker以及昨天没做完的例子 文件上传与下载 文件 ...

  5. Struts2学习笔记①

    Struts2 学习笔记① 所有的程序学习都从Hello World开始,今天先跟着书做一个HW的示例. Struts2是一套MVC框架,使用起来非常方便,接触到现在觉得最麻烦的地方是配置文件.我的一 ...

  6. Struts2学习笔记NO.1------结合Hibernate完成查询商品类别简单案例(工具IDEA)

    Struts2学习笔记一结合Hibernate完成查询商品类别简单案例(工具IDEA) 1.jar包准备 Hibernate+Struts2 jar包 struts的jar比较多,可以从Struts官 ...

  7. Struts2 学习笔记(概述)

    Struts2 学习笔记 2015年3月7日11:02:55 MVC思想 Strust2的MVC对应关系如下: 在MVC三个模块当中,struts2对应关系如下: Model: 负责封装应用的状态,并 ...

  8. html5标签video(播放器)学习笔记(二)-基本操作

    html5标签video(播放器)学习笔记(二)-基本操作 subying 发布时间: 2014/12/01 23:59 阅读: 13008 收藏: 21 点赞: 3 评论: 0 摘要 本文介绍了ht ...

  9. Kettle学习笔记(二)— 基本操作

    目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 打开Kettle 打开 ...

  10. struts2学习笔记之十四:使用注解配置Action(不是和spring集成使用)

    Struts2支持使用注解配置Action,减少配置文件的配置 Struts2如果要支持注解配置Action,需要插件的支持,导入插件struts2-convention-plugin-2.1.8.1 ...

随机推荐

  1. 爬虫第四篇:html解析之xpath

    在上面的三篇中我们html的解析都是用了正则表达式进行匹配.下面我们主要说一下一个使用起来很简单的模块xpath进行匹配解析html文本. Chrome上有一款插件:XPath Helper,直接在浏 ...

  2. R语言:导入导出数据

    主要学习如何把几种常用的数据格式导入到R中进行处理,并简单介绍如何把R中的数据保存为R数据格式和csv文件. 1.保存和加载R的数据(与R.data的交互:save()函数和load()函数) a & ...

  3. 编写高质量代码——html、css、javascript

    [编写高质量代码]1.注释的必要性:增加代码的可读性.2.web标准:由一系列的标准组合而成,其核心理念是将网页的结构.样式.行为分离,所以他可分为:结构标准.样式标准和行为标准.3.一个符合标准的网 ...

  4. poj2778 ac自动机+矩阵快速幂

    给m个子串,求长度为n的不包含子串的母串数,最直接的应该是暴搜,肯定tle,考虑用ac自动机 将子串建成字典树,通过next表来构造矩阵,然后用矩阵快速幂求长度为n的数量 邻接矩阵https://we ...

  5. nyojb 2359 巴什博弈变形

    http://acm.nyist.me/JudgeOnline/problem.php?id=2359 2359: 巴什博弈? 时间限制: 1 Sec  内存限制: 30 MB提交: 237  解决: ...

  6. 识别设备是IOS还是安卓

    var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > - ...

  7. es6基础入门变量的解构赋值

    let [a, b, c] = [1, 2, 3]; let [foo, [[bar], baz]] = [1, [[2], 3]]; foo bar baz let [ , , third] = [ ...

  8. AngularJS-webapp($q)

    $q延迟加载: 当一个数据需要请求多次,后面一个数据需要前面请求的数据时,我们就可以通过延迟加载进行数据传递 如下代码: 首先:我们需要得到职位信息: { "id": " ...

  9. _Meta 部分用法

    model.UserInfo._meta.app_label #获取该类所在app的app名称 model.UserInfo._meta.model_name #获取该类对应表名(字符串类型) mod ...

  10. UVA - 11754 Code Feat (分块+中国剩余定理)

    对于一个正整数N,给出C组限制条件,每组限制条件为N%X[i]∈{Y1,Y2,Y3,...,Yk[i]},求满足条件的前S小的N. 这道题很容易想到用中国剩余定理,然后用求第k小集合的方法输出答案.但 ...