目录
1.接受参数
以表单注册为例
2.其中日期类会报400错误需要
@DateTimeFormat(pattern="yyyy-MM-dd")//接受前端传递格式参数时的转换 @JsonFormat(pattern = "yyyy-MM-dd HH:dd:ss",timezone = "GMT+8")//把java对象转换为json格式时的样式
3.静态资源
比如: css, js, img,html 以img图片为例
需要添加<mvc:default-servlet-handler/>
4.把控制层数据返回,渲染到页面
4.1model:model对象可以理解为request对象。凡是在该对象中保存的数据,作用范围同一个请求有效。
4.2request 需要配置servlet的依赖
4.3session :同一会话下只要不退出都能显示
5.返回json数据
5.1添加jackson依赖
5.2 控制层返回对象类型,@ResponseBody把java对象转换为json
6.定义全局异常处理
出现异常时网页显示很乱,用户体验感不好所以需要一个异常处理页面
定义异常处理类==》springMVC扫描异常处理类==》创建异常页面
7.拦截器
7.1自定义拦截器
7.2 把自定义的拦截器声明到springmvc容器中。---springmvc.xml
8.文件本地上传
文件上传的条件:
1.必须使用表单。
2.表单的提交方式method必须是post.
3.表单上传的编码必须是二进制。enctype="multipart/form-data"
4.input的类型必须file类型。而且该输入框必须有name属性。
8.1普通本地上传
①:引入文件上传的依赖
② 配置文件上传解析器
前端页面:
后台controller代码:
8.2ajax本地上传
前端页面:
引入js文件包
后台controller代码:
9. 文件上传到阿里云oss服务器
①:登录阿里云==》产品==》对象存储oss==》产品文档==》SDK示例==》JAVA==》安装==》选择版本合适的依赖添加到项目
②:SDK示例==》JAVA==》上传文件==》简单上传
复制上传文件流
从上往下
第一个:阿里云注册地域对应的Endpoint
第二个: 对应个人的密钥,点击管理后复制
第三个:本地文件的完整路径==》name值.getOriginalFilename()
第四个和第五个: 自己的Bucket名称和要上传的文件名
修改完成后用try-catch处理异常(将整个复制来的文件处理就行 不用动脑)也可以复制过来就处理
9.1普通上传oss
前端页面:
后台controller代码:
9.2ajax上传oss
前端页面:
后台controller代码:
10 springMVC的流程
1.用户发送请求到前端控制器(DispatcherServlet)
2.前端控制器请求HandlerMapping查询根据 xml 配置、注解进行查找Handler
3.处理器映射器 HandlerMapping 向前端控制器返回 Handler
4.前端控制器调用处理器适配器去执行 Handler
5.Handler 执行完成后给适配器返回 ModelAndView对象。ModelAndView 是SpringMVC 框架的一个底层对象,包括 Model 和 View。
6.前端控制器请求对应的试图解析器去进行视图解析
7.试图解析器向前端控制器返回 view
8.前端控制器进行视图渲染。就是将模型数据(在 ModelAndView 对象中)填充到 request 域
9.视图页面将结果返回前端控制器
10.前端控制器向用户响应结果