1. 框架是什么,框架有什么作用
      1. 框架 实现部分功能的代码.
      2. 作用 控制请求和响应.
    2. 相对于WEB项目的执行流程
    3. struts2项目搭建流程
      1. 配置web.xml 配置前端控制器[核心控制器] ---一个filter.
        1. 包名:org.apache.struts2.dispatcher.ng.filter.
        2. 类名:StrutsPrepareAndExecuteFilter
        3.   <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>
      2. 配置struts.xml --struts2框架配置文件
        1. 作用:控制struts2框架执行的流程
        2. 文件名称:struts.xml
        3. 路径:src
        4. struts配置文件的加载顺序
          1. init_DefaultProperties(); // [1] ---------- org/apache/struts2/default.properties
          2. init_TraditionalXmlConfigurations(); // [2] --- struts-default.xml,struts-plugin.xml,struts.xml
          3. init_LegacyStrutsProperties(); // [3] --- 自定义struts.properties
          4. init_CustomConfigurationProviders(); // [5] ----- 自定义配置提供 init_FilterInitParameters() ; // [6] ----- web.xml
          5. init_AliasStandardObjects() ; // [7] ---- Bean加载
      3. 创建Action类的三种方式
        1. POJO类 --除了继承Object类 ,不存在其他继承,实现的类 优点:无耦合 缺点:都要自己去实现.
        2. 实现Action类接口 --实现接口的execute方法,并且提供5个返回视图. 优点:耦合度低 缺点:都要自己去实现.

        3. 实现ActionSupport类 --在Action接口的基础上加强了 表单校验,错误信息设置,获取国际化信息 优点:耦合低 提供的功能多.
      4. struts.xml配置
        1.  <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
          <struts> <!--各种配置--> </struts>
      5. Action配置
        1. 1 <package> //声明一个包,管理Action.
          2 name //这个包的名称[唯一值]
          namespace//和Action的name 属性合并确定一个唯一的地址
          extends//要继承的其他包明
          abstrace//这个包是否可以被继承 true可以继承
           <action> //声明一个Action.
          name //和包的namespace 合并 确定一个唯一地址
          class //这个action要去调用类的类全名 查看Action创建的三种方式 默认第三种
          method //这个action要去执行这个类的方法 默认[execute] <result>用于确定返回结果返回视图
          name //和action[method]返回结果对应,返回一个视图.默认[success]

          1. 演示:
          2.   <package name="default" namespace="/" extends="struts-default">
            <action name="hello" class="cn.itcast.action.DefaultAction">
            <result>/hello.jsp</result>
            </action>
            </package> 此时输入: http://localhost/struts2_day01_2/a/b/c/hello 也访问到了action。 * 原因:struts2中的action被访问时,它会首先查找
            * .namespace="/a/b/c" action的name=hello 没有.
            * .namespace="/a/b action的name=hello 没有
            * .namespace="/a" action的name=hello 没有
            * .namespace="/" action的name=hello 查找到了.
            * 如果最后也查找不到,会报404错误.
          3. 默认Action的配置和作用
          4.  作用 处理其他Action处理不了的路径.
            <default-action-ref name="action的名称" />
            class 指定当前包默认执行的类.

struts2简单入门的更多相关文章

  1. 【java开发系列】—— struts2简单入门示例

    前言 最近正好有时间总结一下,过去的知识历程,虽说东西都是入门级的,高手肯定是不屑一顾了,但是对于初次涉猎的小白们,还是可以提供点参考的. struts2其实就是为我们封装了servlet,简化了js ...

  2. struts2简单入门-配置文件-struts.xml

    struts.xml 作用:配置struts中的action,result,package,全局action,result,等等. 基本文件格式: <?xml version="1.0 ...

  3. struts2简单入门-执行流程

    简单的执行流程图

  4. struts2简单入门-数据校验

    数据校验流程 校验数据的方式 重写execute方法在内部写校验代码 public class LoginAdminAction extends ActionSupport { private Use ...

  5. struts2简单入门-OGNL表达式

    什么是OGNL表达式 Object-Graph Navigation Language的缩写. 可以遍历整个对象结构图,实现对象类型转换等功能的表达式. OGNL实际上是个Map集合,有一个上下文根对 ...

  6. struts2简单入门-关于Result标签Type属性的说明

    Result标签 作用 当action执行完毕,后要返回什么样的视图. Type属性 决定返回的是什么视图. struts-default.xml的Type属性的定义 <result-types ...

  7. struts2简单入门-参数传递的三种方式

    三种方式的简单说明 属性传递 把参数定义为属性提供get/set方法. 使用情况 参数少,不需要共享. 演示代码 public class LoginAction extends ActionSupp ...

  8. struts2简单入门-Action的三种配置方式

    普通的配置方式 优点:可读性高 缺点:重复的配置太多. 使用情况 一个actian只有一个方法,只需要处理一种请求. 代码演示 <action name="voteResult&quo ...

  9. 【java开发系列】—— spring简单入门示例

    1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...

随机推荐

  1. T4 反射实体模型生成代码(Demo)

    1.新建一个T4 Script   <#@ template language="C#" debug="True" #> <#@ output ...

  2. codeblocks: 使用静态(static)链接库(pcre)的配置

    说明:在c/c++程序中使用静态链接库,编译后不再需要相关的dll文件(如:libpcre-1.dll,libpcreposix-0.dll)就可以正常的运行. 现在遇到一个问题,如果使用 pcre_ ...

  3. C++基础知识--DAY4

    今天主要讲的是类中除了构造器析构器以外的拷贝构造器,运算符重载等问题 首先是拷贝构造器 1. copy constructor(拷贝构造) 其也是构造器,其地位和constructor的地位是一样的 ...

  4. php递归函数中使用return的注意事项

    php递归函数中使用return的时候会碰到无法正确返回想要的值得情况,如果不明白其中的原因,很难找出错误的,就下面的具体例子来说明一下吧: function test($i){ $i-=4; if( ...

  5. Windows7安装程序无法定位现有系统分区,也无法创建新的系统分区

    解决Windows7.Windows8系统安装时“安装程序无法定位现有系统分区,也无法创建新的系统分区”提示. 方法一 把Windows7镜像发在你电脑的非系统盘的其他硬盘上. 重启机器,通过U盘启动 ...

  6. jmeter中判断数据库是否存在相应的记录

    jmeter判断数据库中是否存在相应记录可以使用count 配合case,然后再加个断言,后面用 变量JMeterThread.last_sample_ok来判断是否存在相应记录 select cas ...

  7. 正态分布-python建模

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  8. JAVA核心技术I---JAVA基础知识(数字相关类)

    一:相关数字类 –整数 Short, Int, Long –浮点数 Float, Double –大数类 BigInteger(大整数), BigDecimal(大浮点数) –随机数类 Random ...

  9. Linux 三剑客 -- awk sed grep

    本文由本人收集整理自互联网供自己与网友参考,参考文章均已列出,如有侵权,请告知! 顶配awk,中配sed,标配grep awk 参考 sed 参考 grep 参考 在线查看linux命令速记表 app ...

  10. idea上使用maven模块开发

    使用maven模块开发: 使用Maven构建多模块项目 在平时的Javaweb项目开发中为了便于后期的维护,我们一般会进行分层开发,最常见的就是分为common(域模型层).dao(数据库访问层).s ...