• 01-struts2介绍与入门程序


    1.struts2介绍

    • 什么是框架,框架有什么用?

    框架 是 实现部分功能的代码 (半成品),使用框架简化企业级软件开发 ,提高开发效率。学习框架 ,清楚的知道框架能做什么? 还有哪些工作需要自己编码实现 ?

    • 什么是struts2框架,它有什么用?

    Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。
    其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心
    struts2=struts1+webwork;
    struts2框架是apache产品。
    struts2是一个标准的mvc框架。 javaweb中的model2模式就是一个mvc模式。 model2=servlet+jsp+javaBean
    struts2框架是在javaweb开发中使用的。
    使用struts2框架,可以简化我们的web开发,并且降低程序的耦合度。
    XWork---它是webwork核心
    Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证,类型转换,
    强大的表达式语言(OGNL – the Object Graph Navigation Language),
    IoC(Inversion of Control反转控制)容器等

    2.struts2快速入门

      1.快速入门步骤

    1.导入jar包

    下载struts2的jar包 struts-2.3.15.1-all 版本.

    struts2的目录结构:
    apps: 例子程序
    docs:文档
    lib:struts2框架所应用的jar以及插件包
    src:源代码 
    core 它是struts2的源代码
    xwork-core struts2底层使用了xwork,xwork的源代码

    注意:在struts2开发,一般情况下最少导入的jar包,去apps下的struts2-blank(将struts2-blank.war改为struts2-blank.rar解压)示例程序中copy

    2.对struts2框架进行配置

          • web.xml文件中配置前端控制器(核心控制器)-----就是一个Filter。目的:是为了让struts2框架可以运行。

                  

               <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>
          • 创建一个struts.xml配置文件 ,这个是struts2框架配置文件。

                    

    目的:是为了struts2框架流程可以执行。

    名称:struts.xml
    位置:src下(classes下)

    3.创建一个HelloAction类

              

    要求,在HelloAction类中创建一个返回值是String类型的方法,注意,无参数。
    public String say(){
    return "good";

    4.在struts.xml文件中配置HelloAction

                

    1 <package name="default" namespace="/" extends="struts-default">
    2                 <action name="hello" class="cn.itcast.action.HelloAction"
    3                     method="say">
    4                     <result name="good">/hello.jsp</result>
    5                 </action>
    6             </package>

    5.创建index.jsp页面,hello.jsp页面。

    6.在index.jsp中添加连接,测试

            

    <a href="${pageContext.request.contextPath}/hello">第一次使用struts2</a>
    在地址栏中输入:http://localhost/struts2_day01/index.jsp 访问连接,就可以看到
    HelloAction类中的say方法执行了,也跳转到了hello.jsp.

      2.快速入门程序流程分析

    3.struts2流程分析与工具配置

        

    1.流程分析


    请求 ---- StrutsPrepareAndExecuteFilter 核心控制器 ----- Interceptors 拦截器(实现代码功能 ) ----- Action 的execute --- 结果页面 Result
    * 拦截器 在 struts-default.xml定义
    * 执行拦截器 是 defaultStack 中引用拦截器

    ---- 通过源代码级别断点调试,证明拦截器是执行


    2.关于手动配置struts.xml文件中提示操作



    如果安装Aptana编辑器 ,请不要用Aptana自带xml编辑器 编写struts2配置文件
    struts.xml提示来自于 DTD约束,
    <!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">
    如果可以上网,自动缓存dtd,提供提示功能
    如果不能上网,也可以配置本地DTD提示

    *** 导入DTD时,应该和配置DTD版本一致


    3.关联struts2源文件


    如果是com.opensymphony.xxx 在xwork-core下
    如果是org.apache.struts2 在core下

     


    4.使用插件 struts2-config-browser-plugin-2.3.15.1

     


    提供在浏览器中查看 struts2 配置加载情况

    将解压struts2/lib/struts2-config-browser-plugin-2.3.7.jar 复制WEB-INF/lib下

    访问 http://localhost/struts2_day01/config-browser/index.action 查看 struts2配置加载情况

     

     

  • 相关阅读:
    Python 学习日记 第七天
    Python 学习日记 第六天
    Python 学习日记 第五天
    Python 学习日记 第四天
    Redis 中的数据类型及基本操作
    Asp.net mvc 中View 的呈现(二)
    Asp.net mvc 中View的呈现(一)
    Asp.net mvc 中Action 方法的执行(三)
    Asp.net mvc 中Action 方法的执行(二)
    Asp.net mvc 中Action 方法的执行(一)
  • 原文地址:https://www.cnblogs.com/1963942081zzx/p/6442487.html
Copyright © 2020-2023  润新知