`

<<深入浅出Struts>>总结

    博客分类:
  • SSH
阅读更多

一.纵观本书:
基本原理是实现控制器的功能和展示层的标签.
form+javabean+ActionForm+Action+配置struts-config完成整个的动作,
其中form通过jsp网页的<html:form action="/XXX">的表单参数,提交时,产生XXX.do的动作,这个动作通过,struts-config.xml的配置,找到Action,Action通过ActionForm(这个类跟form的属性名字要全部一样,保证赋值正确性),对里面的值进行初始化,把里面的值赋值给相应的javabean,再JavaBean再去实现一些持久层的操作,再在Action中,通过return mapping.findForward("success");在xml中找到具体的对应的success进行页面的跳转!
里面还有一些小的功能:Validator插件,消息处理和国际化,Tiles框架,Struts应用安全性,对象缓存,分页与排序,文件上传与下载,放置重复提交,过滤器和一些EL,JSTL内容,标签库..
二.xml配置文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<struts-config>
    <form-beans>
        <form-bean name="UserRegisterForm" type="greatwqs.form.user.UserRegisterForm"/>
        <!--jsp网页里面的form调用,下面没有写Action-->
   </form-beans>    
    <global-exceptions>
    </global-exceptions>
    <global-forwards>
        <forward name="welcome"  path="/Welcome.do"/>
    </global-forwards>
   <action-mappings>
          <action path="/ListVideo"
            type="greatwqs.action.global.ListVideoAction"
            scope="request">
            <forward name ="success" path="/ListVideo.jsp"/>
        </action>
</action-mappings>
    
    <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
    <!--Tiles框架之用-->
    <message-resources parameter="greatwqs/error/ApplicationResource"/>
    <!--错误信息配置-->
    <plug-in className="org.apache.struts.tiles.TilesPlugin" >
        <set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
        <set-property property="moduleAware" value="true" />
    </plug-in>    
    <!-- ===== 验证器========== -->
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property
            property="pathnames"
            value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
    </plug-in>  
</struts-config>

 三.ActionForm
有与form属性一样的名字的属性:

private String updateemail;
private String updatephone;
和get与set的共有方法;
里面有一个方法继承,进行基本的验证操作,也可以用JS验证和validation.xml验证;
public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
        ActionErrors actionerrors = new ActionErrors();
        if(updateemail.equals("")){
            actionerrors.add("no.updateemail", new ActionMessage("no.updateemail"));//这个要在greatwqs/error/ApplicationResource.properties中制定,错误的信息
     //在jsp中的<html:errors>显示错误消息
        }
        return actionerrors;
    }

 四.Action
里面有一个方法需要继承

public ActionForward execute(ActionMapping mapping,
            ActionForm form,
            HttpServletRequest request,
            HttpServletResponse response) throws Exception {
            //这个里面主要是把form转化到ActionForm的具体类,在赋值给对应的JavaBean
            //在去结合相应的操作[数据库操作]
            //最后返回return mapping.findForward("****");这个是到配置文件去找,转发到具体的jsp页面.
}

 五.form
主要是应用Struts提供的HTML标签库
如:form,text,password,hidden,submit,cancel,select等,表单标记元素

<html:form action="/search">
             <html:select  property="vary">
                  <html:option value="2">视 频</html:option>
                  <html:option value="1">音 乐</html:option>
             </html:select>&nbsp;&nbsp;
             <html:text  property="keyword"/>        
             <html:submit  value="NOVA搜索"/>
</html:form>

 就写这么多吧,把Struts的基本功能说了,其他的功能就不总结了..

 

分享到:
评论

相关推荐

    深入浅出Struts2.pdf

    《深入浅出Struts2》是一本详尽介绍Struts2框架的技术书籍,旨在帮助开发者深入了解Struts2的核心概念及其应用实践。该书由Ian Roughley撰写,经过李剑的翻译,通过InfoQ中文站免费提供给读者。 Struts2是一个开源...

    深入浅出Struts2.0

    ### 深入浅出Struts2.0关键知识点概览 #### 1. Struts2框架概述 - **背景介绍**:自1997年首个Servlet规范发布以来,Java Web开发经历了显著的进步。Apache Struts作为一项重要的技术创新,在2000年由Craig ...

    深入浅出Struts_2

    本书《深入浅出Struts_2》主要介绍了Struts2的核心概念和技术细节,旨在帮助开发者更好地理解和掌握Struts2框架。 #### 二、Struts2框架的发展历程与重要性 自1997年Servlet规范发布以来,Java Web开发经历了多个...

    深入浅出Struts2(CN)

    ### 深入浅出Struts2:关键知识点解析 #### 一、Struts2概述 **Struts2** 是一款基于 **MVC (Model-View-Controller)** 架构模式的开源Java Web应用程序框架。它由Apache Struts 1发展而来,在保持了Struts 1的...

    深入浅出Struts2开发 教程.zip

    总结,"深入浅出Struts2开发 教程.zip"将带领你逐步掌握Struts2框架的各个方面,通过阅读"starting-struts2-chinese.pdf",你可以深入了解Struts2的原理、配置、编程模型以及最佳实践,从而提升你在Java web开发中的...

    webwork深入浅出

    ### WebWork深入浅出 #### 一、引言 随着互联网技术的发展,Web应用程序的复杂度日益增加。为了更好地管理这种复杂性,开发者们引入了多种框架和技术来简化开发过程。其中,WebWork框架作为一款优秀的Java Web开发...

    Struts2中文教程大全

    本来积攒近两年的Struts2中文学习资料,希望对大家有所帮助 Struts API Struts2.0培训文档.rar Struts2.0培训文档2003版本.rar struts2.0中文帮助手册.chm ...深入浅出struts2.pdf 。。。 就不一一列出了

    传智播客 赖家才老师 主讲 struts1 的课堂总结

    赖家才老师的课堂总结深入浅出地讲解了Struts1的核心概念和使用技巧,帮助我们理解这个框架的工作机制。 1. **Action 初始化**: - Action 对象在每次请求时初始化,而不是在配置加载时初始化。这意味着每个请求...

    深入浅出的理解框架SSH与MVC设计模式 - 副本.docx

    《深入浅出理解框架SSH与MVC设计模式》 在当今的Java EE开发领域,SSH(Struts2、Hibernate、Spring)框架与MVC设计模式是开发者必须掌握的核心技术。这些框架不仅简化了开发流程,提高了开发效率,而且在解决传统...

    Struts2入门教程

    本文将深入浅出地介绍Struts2入门教程,帮助初学者和有一定经验的开发者更好地理解和使用这个框架。 一、Struts2入门准备 在开始使用Struts2之前,首先需要下载Struts2的压缩包,例如struts-2.1.6-all.zip,并将其...

    struts技术文档

    - **目的**: 旨在为Java技术框架的初学者提供深入浅出的学习资料。 - **目标读者**: 对Java技术框架感兴趣的新手。 **1.1.1 谁创建了Struts?** Struts是由[Ted Husted](https://en.wikipedia.org/wiki/Ted_Husted)...

    利用felix和struts2实现osgi web

    本文深入浅出地解释了如何结合Felix和Struts2构建基于OSGi的Web应用,通过一个具体的时间服务示例展示了OSGi的动态部署和模块化特性。这种开发方式使得Web应用的维护和扩展更为灵活,适应性强,尤其适合需要长期运行...

Global site tag (gtag.js) - Google Analytics