`

Struts2学习笔记day01

 
阅读更多

1.Struts1缺点
 1.侵入性的,对于Servlet的API的依赖比较严重【耦合度比较高】
 2.ActionForm数据模型的提供,在开发中会造成不良的影响


2.Struts2[MVC的框架,单控制器的框架]有apache提供
   Struts1和Struts2没有任何关系  struts1-->Serlvet
                                  struts2-->webwork

3.Struts2的框架
   1.下载jar包 struts2.1.8 /struts2.1.6

4.Struts2环境的搭建
   1.导入jar包
      1).核心jar包
         struts2-core-2.1.8.jar
      2).导入第三方jar包
         xwork-core-2.1.6.jar  是webWork的核心jar包
     oro-2.0.8.jar  验证
     ognl-2.7.3.jar 对象图导航
         freemarker-2.3.15.jar 模板
         antlr-2.7.2.jar 动态字节码
     commons-*.jar
  
   2.导入配置文件
       struts.xml文件在当前项目的src下面

5.Struts2的开发
   1.配置Struts2的单控制器在web.xml中作为一个过滤器
      <filter>
      </filter>

   2.开发Action
      implements Action 接口

   3.配置文件 struts.xml的声明
      <package name="自定义" namespace="/" extends="struts-default">
         <action name="请求" class="action的全路径">
      <result name="action返回的字符串">/跳转的路径</result>
     </action>
      </package>
 
   4.struts2的默认请求为 *.action 或者 *

6.Struts2开发Action的方式
  1.implements Action
  2.一个java类
  3.extends ActionSupport  {提供了Struts2中很多额外功能;普遍使用}


7.Struts2默认执行Action中的execute()方法
  如果<result>/ok.jsp</result> 表示Action返回的结果为success;

8.登陆案例

9.Struts2.0对于JSP中数据的提交的封装
  1)Struts2.0会将Jsp中提交的数据与对应的Aciton属性进行赋值
  2)Struts2.0框架会将Jsp中提交的数据以对象的形式进行封装
    1)LoginAciton {
     private User user;
    }
      User{
       private String name;
      }
   jsp: <input name="user.name" type="text"/>

10.Struts2.0如何实现数据的封装
   1)ActionContext:往作用域中添加数据
     在Action中通过
       ActionContext ctx=ActionContext.getContext();//单例设计模式
       单例设计模式:保证在java的应用程序中,一个类只有一个实例
       单例的常用形式:类的构造器为private
      public class SingleUser{
        private static SingleUser user=new SingleUser();
        private SingleUser(){//私有的构造器
    }
    public static SingleUser getUser(){
       return user;
    }
      }
     SingleUser user=SingleUser.getUser();
     Calendar c=Calendar.getInstance();

  ctx.getxxx().put(key,value);
  public class ActionContext(){
     private HttpServletRequest;
     private HttpSession;
     private ServletContext;
     put(key,value){
        HttpServletRequest.setAttribute(key,value);
     }
  }

  Struts2.0框架默认将Action的属性放入在值栈中

  2) LoginAction exetends ActionSupport implement ServletRequestAware
      private HttpServletRequest request;
      @Override
    public void setServletRequest(HttpServletRequest request) {
       this.request=request;
    }

11.result跳转类型
  <result name="" type="dispatcher">jsp页面</result>
      一个Action 转发到 一个 Jsp页面【默认】
  <result name="" type="redirect">jsp页面</result> 
      一个Action 重定向到 一个Jsp页面
  <result name="" type="chain">actionName </result>    
      aAction 转发到 bAction
  <result name="" type="redirectAction">actionName</result>
      aAction 重定向到 bAction

分享到:
评论

相关推荐

    Struts2_day03笔记

    学习Struts2第三天笔记

    Struts2_day04笔记

    学习Struts2第四天笔记

    Struts2_day01笔记

    学习Struts2第一天的笔记

    struts2框架2016版资料day01

    通过传智播客的struts2框架2016版day01课程,你可以系统地掌握Struts2的基础知识,为后续的深入学习和项目开发打下坚实的基础。同时,结合笔记和思路图,可以更好地理解和吸收所学内容,提升学习效率。在实际编程中...

    黑马程序员_struts2框架2016版视频_struts2_day01笔记

    ### Struts2框架概述 #### 1.1 什么是Struts2框架? **Struts2框架** 是一个基于MVC(Model-View-Controller)架构的开源Java Web应用程序框架,它简化了Java Web应用程序的开发过程。Struts2提供了一种简洁而强大...

    Struts2_day02笔记

    学习Struts2第二天笔记

    黑马程序员_struts2框架开发2016版讲义和笔记资料_day01_day02_day03_day04

    在Day01的学习中,通常会介绍Struts2的基本概念和历史背景,包括其与前一代Struts1的区别。Struts2的核心组件如Action、Result、Interceptor(拦截器)等也会被详细讲解。此外,还会介绍如何搭建Struts2的开发环境,...

    struts and hibernate学习笔记

    6. **实例分析**:可能包含多个日志记录(day01至day03)的项目实践,逐步深入理解Struts2和Hibernate的使用。 通过这些文档,你可以系统地学习到Struts2和Hibernate的基本概念、配置、使用方法以及在实际项目中的...

    传智168期JavaEE struts2杜宏 day 29~day31笔记.pdf

    标题中的“传智168期JavaEE struts2杜宏 day 29~day31笔记”暗示了文档是一系列关于JavaEE技术栈中的Struts2框架的课程笔记,由杜宏教授,并且特别强调了是从29天到31天的学习内容。JavaEE(Java Platform, ...

    超详细Struts2教程及源代码

    教程分为6个部分,从基础到深入,分别是day01、day02、day03、day04、day05和day06,这表明教程按照学习路径进行组织,帮助你在一周内掌握Struts2的关键知识。 首先,day01可能涵盖了Struts2的基本概念,包括MVC...

    黑马程序员struts2框架2016版资料(笔记+源码+思路图)

    2016年版本的Struts2资料集合了学习笔记、源代码和思路图,旨在帮助开发者深入理解并熟练运用这个框架。以下是关于Struts2框架的一些核心知识点: 1. **简介**: Struts2是Struts1的升级版,解决了Struts1中的一些...

    Java高级应用和Struts的入门笔记

    - **泛型**:在`DAY01【泛型笔记】.docx`中,你将学习到泛型是如何帮助我们在编译时就检查类型安全,并消除运行时的类型转换异常。泛型允许我们在类、接口和方法中定义类型参数,增强了代码的重用性和安全性。 - ...

    崔希凡javaweb笔记day24-day28

    崔希凡老师的JavaWeb笔记涵盖了从day24到day28的内容,这五天的教程主要涉及了JavaWeb开发中的核心技术和实践应用。在JavaWeb领域,这些天的学习通常是项目开发周期中的关键阶段,涵盖了从数据库交互、Servlet编程、...

    传智播客2016版hibernate+struts2+Spring框架资料课件+笔记

    通过day01-day04的学习计划,你将逐步深入这三个框架的内部机制,掌握它们的整合使用,从而提升你的Java Web开发能力。 总之,这个资源包是一份宝贵的自学资料,无论你是初学者还是有一定经验的开发者,都能从中...

    java\CoreJava笔记\CoreJAVA_day01

    - 主流框架:如Struts、Spring、Hibernate(SSH),以及Ajax,掌握其工作原理和应用。 - UML建模:理解统一建模语言,用于系统设计。 - 设计模式:掌握常见的设计模式,如单例、工厂、观察者等,提升代码质量和可...

    超值个人java学习笔记

    Struts2是基于MVC设计模式的Web应用程序框架,用于简化Java Web开发。它提供了一套处理HTTP请求和响应的机制,以及动作调度、结果渲染、异常处理等功能。 【Hibernate】 Hibernate是一个强大的ORM框架,它自动管理...

    黑马程序员_javaWEB讲义和笔记资料_day08

    在"黑马程序员_javaWEB讲义和笔记资料_day08"中,我们可以预见到这一天的学习内容将深入到Java Web开发的核心概念和技术。"传智播客"作为知名的技术教育机构,其课程通常涵盖全面且深入的IT知识,因此这些讲义和笔记...

    sturts2课件第三天

    在提供的压缩包文件中,"day03.txt"可能是课程笔记或讲解大纲,"struts2_04"和"struts2_02"可能包含更深入的示例代码或讲解资料,可以帮助我们进一步理解和实践Struts2的相关概念和技术。通过深入研究这些资源,...

    整理后java开发全套达内学习笔记(含练习)

    short 16bit, -2^15~2^15-1 (2^15=32768) int 32bit, -2^31~2^31-1 (2147483648,20亿,10位有效数字) long 64bit, -2^63~2^63-1 (900亿亿,20位有效数字) float 32bit, 9位有效数字,含小数(四舍五入)(小数点算...

    JAVA.rar源码

    4. **JSP(day03).txt、JSP(day05).txt**:这是两个关于Java Server Pages (JSP)的学习笔记,可能分别对应课程的第三天和第五天。JSP是Java Web开发的重要组成部分,用于创建动态网页。文件中可能包括了JSP语法、指令...

Global site tag (gtag.js) - Google Analytics