Spring.Day04,数据响应方式


01. SpringMVC的数据响应方式

  a. 页面跳转

    >> 直接返回字符串;

     >> 通过 ModelAndView对象返回;

   b. 回写数据

    >> 直接返回字符串;

     ** 实际应用中,一般会是直接返回JSON

      > JackSon导入

          

    >> 返回对象或集合;

      此时如果直接返回对象,可以正常,但如果直接返回字符串,将报错

        

    >>> 上述方法,非常的麻烦,其实SpringMVC已经完成了上述内容,只需要配置一下即可;而且,此时也可以直接返回字符串

      通过内置的mvc驱动方式,框架会自动将对象解析成json, 也可直接发送字符串数据

 02. SpringMVC请求参数

  >> 基本参数类型 : 定义函数参数时,直接按传递的参数名称做参数即可自动封装;

    *> 提交参数与函数参数不一致时,使用参数注解

  >> POJO参数类型: 要求传入参数,对应于POJO对象的属性即可自动封装

   >> 数组参数类型: 函数中的数组参数名称与传入参数的名称一样即可自动封装;

  >> 集合参数类型: 集合对象的自动封装,一般会先建一个对象,这个对象的一个参数为集合

    如: private List listuser;   之后按照对象的方式配置在函数参数中;

    > 同时在客户端提交参数时,需发按照 集合[序号].属性名  的方式配置 提交参数名称;

    > step1. 写个对象

     > step2.业务事件中,以上述对象为参数

    > step3.编写表单,按vo对象属性名及成员对象属性名配置参数名

    > step4.请求数据

    > 乱码解决: 在web.xml中配置编码 (这里配置的是springmvc中的过滤器), 也可以直接自己写个过滤器,对编码进行处理

       

   >> 集合提交的第2种场景,Ajax提交;(这种方式可以不用配置上面的VO类,在提交时,直接通过JSON配置提交)

    > step1. 在服务端配置函数时,直接配置集合参数,同时在参数前配置注解,表示直接取数

    > step2. 配置JSP页面,加载JQuery, 在业务中直接提交JSON

    > step3. 在spring配置文件中,配置静态资源的关联

    > step4.业务调用及取数

       

 03. 关于静态资源的二种配置方式

  >> 直接配置资源路径

  >> 不配置资源路径,配置匹配不到时交由Tomcat默认servlet来处理

  >> RestFul 风格下的参数获取

    >Restful介绍

     

    > 参数获取 ( @PathVariable)

   >> 自定义转换器 ; 

    > SpringMVC中提供了一些默认的转换器,但在特定应用场景下,需发自行开发转换器以达到业务需求;如:日期与字符的转换;

    > 自定义类型转换器的步骤

      1. 自行配置,实现SpringMVC中的转换接口

       2. 声明转换器

       3. 引用转换器 (引用值为声明注解时候的id)

   >> Servlet原始相关API的获取

    > 直接在函数中申明对应的参数类型即可使用

  >>请求头获取

   >> Cookie获取

   >> 文件上传

       

     > 单文件上传流程

      1. 导入 fileupload和io 坐标;

       2. 配置文件上传解析器

       3. 编写文件上传代码

    > 多文件上传