miwaiwai

导航

JAVA框架学习

Struts--------------Struts2------------------>Hibernate ---------------->iBatis(MyBatis)--------spring-------------------->springmvc-------->MyBatis-plus

2000年     2006年               2001年        2002年      2003年      2015年              2016年

HIbernate是主流的ORM框架Object Relation Mapping 对象关系映射,将面向对象映射成面向关系

1.框架概述

2.三层架构与Struts2

3.MVC与Struts2

4.案例中存在的一些问题

所谓框架:就是把一些繁琐的重复性代码封装起来,使程序员在编码中把更多的经理放到业务需求的分析和理解上面

特点:封装了很多细节,程序员在使用的时候会非常简单

三大框架:struts,Hibernate,spring(SSH)

    springmvc,mybatis,spring(SSM)

三层架构:

  MVC

    M:model模型,封装数据,javabean

    V:view 视图,展示界面.jsp

    C:Controller控制器,控制程序流程

 

   Struts1.x的基本开发流程与之前使用的DispatcherServlet功能类似的

   在Struts1.x的时代里面还没有所谓的Annotation配置支持,如果要使用struts1,建议生成web.xml

    开发步骤:

      1.StutsProject

      2.记得要 选择web.xml

         3.所谓的开发框架实际就是一组开发程序jar包,那么在MyEclipse里面可以直接为项目配置这些jar包,

         选择项目,而后点击右键,选择MyEclipse的项目支撑,这个红色的地方就是struts支持的地方

        

 

         4.进入struts配置页面

                

             随后的界面里面需要定义一些配置信息,这些配置信息包含如下内容:

              1.Servlet的处理路径:Struts1.x中的Servlet路径是一个经典的"*.do";

              2.随后要求输入项目的程序包,本次设置为:cn.mldn.demo

                这个时候会发现自动创建有一个文件""ApplicationResources"

             3.随后会询问用户要使用的开发包,struts的开发包没有多少个,默认就好

 

        

             4.项目建立完成后会自动在项目中出现一下内容

              1>会自动的讲Struts1.x的开发包配置到CLASSPATH之中

              2>在WEB-INF目录会先自动创建一个struts-config.xml文件,这个是struts的核心配置文件

              3>在src目录下(最终会输出到WEB-INF/class下)存在有一个ApplicationResources.properties

        5.建立一个login.jsp页面

            1>在建立这个页面的时候稍微有一些不同,将使用Struts1.x提供的标签完成

               范例:程序代码

              此时发现定义表单的时候所使用的形式不太一样了,因为它使用标签处理,为了方便回填

               <form>:

               <input type="text">:

               <input type="password">:

           5.配置错误信息,修改ApplicationResources.properties文件

 

           6.后面开始编写处理程序,但是Struts1.x的处理程序是分为两种类型:Action(负责跳转的,与Servlet相同),ActionForm(进行数据验证时用的)

          

                随后会首先进入到创建ActionForm的操作对话框,在这里输入以下的内容

                1>Use case:表示本次操作的模块名称,输入"mylogin"

 

                2>随后会自动出现一个name的"myloginForm",它是在struts-config.xml

                3>让这个ActionForm继承"org.apache.struts.ActionForm"类

                4>此Action类继承"org.apache.struts.action.Action"父类

                5>随后设置inputSource为login.jsp

                6>首先在MyloginActionForm中编写如下代码

                   a.首先可以发现建立的数学都会自动生成setter和getter方法

                 b.数据验证的代码操作要求写在validate方法里面

                  此方法主要进行用户输入数据的验证,如果现在输入的数据有错误,则将错误信息保存在ActionMessage对象,可以同意保存在ActionErrors,如果在返回的是null    

                  或者ActionError返回的没有包含任何错误信息,那么会将请求继续交给Action进行处理,否则会返回一个错误路径

                mapping:表示所有的映射信息,此类一般不适用

                request可以接受用户的请求参数

                ActionErrors:如果返回为null火蟑螂里面保存的错误信息为0,那么表示正确

              7.开发Action程序,一旦代码执行到了Action之后,那么就表示数据验证已经通过了,一定是符合要求的数据

                1>在struts-comfig.xml文件里面配置跳转的路径,现在假设成功或者失败都调整到login.jsp

              8.此时既然有可能出现错误信息,那么在login.jsp页面里面使用一个标签输出:

                <html:errors/>

                ${msg}

                此时一个最为基础的struts1.x的应用就实现了,但是可能最大感受开发结构很规矩,代码编写很受限,

      4.总结:

        Struts作为MVC开发框架的先河,在其影响之后产生了:JSF,Webwork,一定要记住:Struts是工作显示层与控制层的框架,他不涉及业务层和数据层的框架

        1.vo的数据传递

        2.实现Action的错误跳转

        3.具体内容

          此时的项目里面所有的数据都是分开传递的,但是在实际开发之中,所有的数据最好都是采用vo类进行传递    

          所以Struts1.x里面支持参数与vo类的转换

        范例:顶一个一个Member.java的vo类

    3.具体内容

      只要一说到文件上传的操作,就应该离开想到以下几点问题

      1>上传文件的表单一定要进行封装

      2>需要使用一些上传组件,帮助用户简化上传的难度

      3>对于被封装的表单与不封装的表单取得参数内容的操作形式不同

     如果你现在的项目使用mvc开发(不适用开发框架),那么一定使用SmartUpload上传

      使用的开发框架(Struts,springmvc)都使用的是apache的FileUpload上传组件完成,这个组件进行了足够多的封装操作,以简化用户的使用难度

      现在的Struts1.x里面使用的也是FileUpload上传组件

      如果要想上传,那么在定义表单的时候要使用文件选择框以及表单封装

  Struts开发步骤:

    1.写jsp页面

     2.请求维了struts处理,这个时需要导入struts开发包

    3.在web.xml文件中配置struts的actionServlet处理所有.do请求

 

    4.在WEB-INF下目录中加入struts的工作配置文件:struts-config.xml

 

     5.在struts的工作配置文件:struts-config.xml,配置actionServlet收到register请求后,调用ReigsterAction处理,并把请求中的数据封装到registerFor中

 

      6.编写封装数据的RegisterFormBean和处理请求的RegisterAction

      7.编写显示全局消息的message.jsp

 

posted on 2024-02-05 21:58  米歪歪  阅读(62)  评论(0)    收藏  举报