SpringMvc
SpringMvc首先它是一个web层的框架 它也是基于MVC的设计理念 通过一套注解的方式实现前台与控制层的交互以及参数的传递。其次它还支持REST风格的URL请求
然后SpringMvc的结构体系
1. 用户发送请求
2. 到达前端控制器
3. 通过前端控制器找到相应的后端控制器
4.后台控制器进行操作之后把通过视图解析器把结果传给用户
通过一个完整的代码来看SpringMvc是怎么和前段完成代码交互的
首先配置web.xml
1.设置编码过滤器:
2.设置Spring自启动 ---Tomcat启动的时候Spring自动启动
3.设置SpringMvc的前端控制器
然后通过映射路径找到相应的对应路径进行操作--并将结果通过视图解析器返回给用户
配置SpringMvc 开启注解驱动--和开启包扫描时必须的 更改包扫描的默认设置指定需要扫描的路径
然后设置静态忽略 如果有必要的话 其中 location 被忽略的静态资源的路径 mapping访问静态资源的全类名
/*忽略一层 /**忽略所有
配置视图解析器 (必须)
然后就是相关类中的注解怎么用了
先看一个实例
这个截图里面有具体怎么做的实列
1.首先在类的前面加上 @contorller表明这是一个控制层的以及刚刚配置包扫描可以扫到的注解
2.如果项目过大可以在前面加上@RequestMapping(value=“指定路径”)--和前台对应一边映射路径更好找到
3.在每个方法面前对应一个@RequestMapping指定映射路径
其中方法接受前端传来的参数方法
1.方法中接受 request来接受
2.接受对象自动封装数据 必须属性名和传过来的名字一致
3.接收单个参数 如 id值 并且是用地址栏(url)传递的 ---REUST风格的传递
在映射路径的后面加上 /{名称}
方法参数前面需要加上@PathVariable 进行注解
4.直接接收 参数 ---名称一致可以直接接受如果名称不一致需要加上 @RequestParam(“参数名”)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
拦截器
自定义类实现 implements HandlerInterceptor
设置需要拦截的条件
配置xml 设置需要拦截或者不拦截的路径
------------------------------------------------------------------------------------------------------------------------------------------
接受日期处理的参数时需要进行处理 加上
实体类的参数前面加上@DateTimeFormat:(格式自定义)需要开启注解驱动
------------------------------------------------------------------------------------------------------------------------------------------
SpringMVc后台传递参数到前台
方法参数添加 ModelMap 进行传递
直接 用PUT方法 以key --value的方式进行传递
-----------------------------------------------------------------------------------------------------------------------------------------------
方法直接return 就是直接去前台找 return 的这个jsp界面没有则会报错
SpringMvc的重定向:return redirect:转发发路径
SpringMvc的转发:return forward:重定向的路径
如果是与ajax交互返回数据的话直接在方法前面加上
@ResponseBody即可