`

Struts2学习笔记day02

 
阅读更多

1.Struts2.0开发
   1)搭建环境
       1.导入jar包
       2.导入配置文件src目录下面 struts.xml
           1).在apps的blank项目中copy
       2).在核心jar包中找到 struts-2-1-7.dtd
   2)开发
      1.在web.xml文件中配置单控制器
          <filter>
        ...
      </filter>
      <filter-mapping>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
      2.Action的开发 【Struts2.0框架默认调用Action当中的execute方法】
         1)implements Action接口
     2)普通的java类
     3)extends ActionSupport[提倡]
        Action中如何获取用户在页面中提交的数据
        1) 在Action中提供和jsp一致的属性,提供getter和setter方法
        2) 在Action中使用对象进行封装【推荐】
        Struts2.0如何将数据加入jsp内置对象
    1.通过ActionContext
      1) ActionContext.getContext().put(key,value); request
      2) ActionContext.getContext().getSession().put(key,value); session
      3) ActionContext.getContext().getApplication().put(key,value); application
        2.implements SevletRequestAware
      public HttpServletRequest setServletRequest(HttpServletRequest request){
         .....
      }

      3.struts.xml的生明
        <package name="命名" namespace="/" extends="struts-default">
    <!--Struts2.0默认请求 *.action 或者 *-->
       <action name="请求" class="xxxx">
         <!--默认跳转为转发
            type=dispatcher|redirect
          -->
         <result name="action的返回值">跳转路径</result>
       </action>
    </package>

     <result name="action的返回值" type="dispatcher">/jsp</result>
     <result name="action的返回值" type="redirect">/jsp</result>
     <result name="action的返回值" type="chain">actionName</result>
       aAction 转发到 bAction
     <result name="action的返回值" type="redirectAction">actionName</result>
       aAction 重定向 bAction


2.Struts2.0框架默认将数据存入值栈【ValueStack】
   ValueStack用来存储请求和处理数据。【request,Session,applicaiton,action】
   ValueStack的结构
     root区(栈结构):存储请求对应的Acion对象
     context区(Map结构):存储request,session,application,action,paramters等信息

3.Struts2.O的标签
   <%@taglib uri="/struts-tags" prefix="s"%>
   <s:debug></s:debug><!--查看值栈当中的对象-->

4.Ognl 对象图导航语言【webWork框架中的表达式语言】
  使用Ognl访问ValueStack中的数据

5.使用Ognl访问值栈中的数据
  1.访问root区  直接写属性名
     <s:property value="id"/>
  2.访问context区中的数据
     使用#开头,如果访问session中的user对象[request,application]
        #session.user

6.Struts2.0标签
   set标签:获取root内部的数据,并将该数据存入到指定的内置对象当中,解决了复杂结构的访问
     scope:request|session|application|action(context区中的Action对象,访问时 #xxx)
  
   push标签:把栈(root区)中的数据放入到root区中,标签结束对象消失
     <s:push value="emps[0]">【emps-->emp-->address-->街道-->门牌号】
       <s:property value="name"/>
        <s:property value="salary"/>
     </s:push>
   
    bean:在JSP页面中创建对象,创建的对象放入Context区域
    <s:bean name="类的全路径" var="引用">
     <s:param name="属性">值</s:param>
    </s:bean>

7.Struts2.0的迭代标签
   iterator标签:迭代集合,类似于forEach标签,将迭代出来的数据存入到Context区域中
      status:index 下标  count:计数 first  last even:偶数  odd:奇数
    <s:iterator var="引用" value="迭代的对象" status="当前迭代的状态">
    </s:iterator>

8.集合的过滤
  集合对象.{?#this.属性==值}
   ?:返回满足所有条件的元素
   ^:返回满足过滤条件的第一个元素
   $:返回满足过滤条件的最后一个元素

 include标签:包含
   <s:include value="jsp页面"/>

 url标签:创建一个Url标签
   <s:url value="/Ajob/请求" />
   <a href="xxx"/>
    当前url :http://localhost:8080/appNames/xxx
    跳转到:http://localhost:8080/appNames/Ajob/login

 action标签:在加载JSP页面时触发Action请求
   <s:action name="请求" namespace="名空间" id="标识" executeResult="true">
  
   </s:action>
     executeResult:是否将Action运行的结果显示在该页面。默认值为false
     ignoreContextParams:该页面的请求参数是否转入到调用的Action当,默认为false
Struts2.0表单标签

Struts2.0提交多个对象
1.自定义类型转换器
2.国际化
3.数据格式校验
4.拦截器

分享到:
评论

相关推荐

    Struts2_day03笔记

    学习Struts2第三天笔记

    Struts2_day04笔记

    学习Struts2第四天笔记

    Struts2_day02笔记

    学习Struts2第二天笔记

    Struts2_day01笔记

    学习Struts2第一天的笔记

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

    Day02的内容可能会深入到Struts2的配置文件,如struts.xml,它用于定义Action、结果类型和拦截器链。同时,Action的编写和执行流程也会被讲解,包括Action类的注解配置,以及如何通过ActionSupport类处理请求和响应...

    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提供了一种简洁而强大...

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

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

    struts and hibernate学习笔记

    在这些学习笔记中,我们可以期待以下主题的深入探讨: 1. **Struts2基础**:包括Struts2的架构、配置文件详解、Action类的创建、结果类型配置、Interceptor的使用以及如何整合Struts2与Spring。 2. **Struts2实战*...

    超详细Struts2教程及源代码

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

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

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

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

    - **Struts2拦截器**:在`DAY13【Struts2拦截器、表单标签、令牌】.docx`中,你将学习如何使用拦截器来增强应用程序的功能,比如进行权限验证、日志记录等。 - **表单标签**:Struts2提供了丰富的标签库,简化了...

    崔希凡javaweb笔记day24-day28

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

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

    《传智播客2016版hibernate+struts2+Spring框架学习资源详解》 在IT行业中,框架的使用是开发高效、稳定应用的关键。本资源包聚焦于三大主流Java Web框架:Hibernate、Struts2和Spring,它们在2016年时仍然是开发者...

    超值个人java学习笔记

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

    sturts2课件第三天

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

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

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

    java\CoreJava笔记\CoreJAVA_day01

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

    整理后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位有效数字,含小数(四舍五入)(小数点算...

    Spring框架

    以上内容只是根据文件名进行的推测,实际的学习笔记和源码可能会提供更详细的信息,帮助读者深入了解Spring框架的各个方面。通过这些资料,开发者可以逐步掌握Spring的基本概念,进而利用Spring进行高效的企业级应用...

Global site tag (gtag.js) - Google Analytics