有关SpringMVC的一些知识点
Spring的获取对象
1.获取原生对象,直接在在方法李传http相关的对象。
2.接受简单数据类型,接受简单数据类型(八种基本类型)参数直接在handler方法里声明,会自动把相同类型进行绑定,但是接受数据类型要封装类好点
3.数值要保持前后一致,不然获取不到,如果传递值发现变化(id-》ids需要在之前加上@requestPamet)
4.绑定pojo类型,直接形参声明类型为pojo类型形参名要和pojo内的名称一致!!!(要根据你pojo内的属性名反射)
5.反射对象包装类(嵌套pojo等),不管对象包装是什么可以按照4一致,参数名一定要和pojo内属性名称保持一致,(别嵌套pojo的参属名也要一致!!!)
6.日期参数传递是需要类型转换器,实现接口扩展(实现converter接口),注册你的实现(配置一个bean)但是我感觉有点麻烦如果不是过多的数据建议工具类创建。
restful风格(资源,表现,状态转化)
rest为url请求风格,rest风格所有的东西都是资源,资源就会有唯一url标识。
根据请求不同代表不同操
get查询,获取资源
post 增加 新建
put 更新
delete 删除资源
(put ,delete 需要添加隐藏的请求域)
rest风格:就是参数风格变化,参数在url中(/user/3)
需要使用一个注解@requestMapping固定的写死传参括号(@requestMapping vslu="/user/{id}" method=""参数一样的请款下,根据请求方式不同进行不同的方法
)
post请求乱码(在web.xml配置好编码filter指定编码)
get请求在(tomcat的server.xml配置)
springMVC的ajax和json交互
1.前端发送json后台直接转化pojo@requestBody
2.后台返回pojo前端直接接受json@responseBody
默认jackson包使用
Spring高级部分
过滤器(filter)在servlet之前对所有静态资源过滤
监听器(listener)启动初始化动作创建监听容器整个过程结束销毁
拦截器springmvc中配置拦截handler方法拦截(前,后,页面跳转再拦截)三次一般用最前
自定义拦截器
需要的类继承HandlerInterceptor
可以在重写三个方法,别对应三次拦截。
第一个返回布尔,是否放行。(true放行,false为默认中止)一般用于权限校验部分
后两个比较少,没有返回。第二个可以修改返回数据和视图修改。第三个异常捕获但不常用。
(拦截器也需要在在springmvc配置)
连接器的执行流程
多拦截器的拦截拦截流程,
拦截器有执行顺序,preHandler顺序执行,后面两个从后往前
springMVC异常处理器
使用注解(方法上)@exceptionHandler(异常类型)传入参数类型不能小于定义,
当各类中的只对当个contorl生效
使用全局的异常捕获需要在一个类上使用@controllerAdvice,下面的2异常捕获方法进行上面
相同的操作更具不同的异常做不同的处理。
请求的转发和重定向:
1转发url不改变参数不需要在传递
2.重定向url改变参数需要再传递(在次传参数可以使用addflash把属性暂存session会在跳转后删除)
有关SpringMVC的一些知识点的更多相关文章
- springmvc的面试知识点总结
新的一年,开启新的篇章,欧气满满,迎接未来. 前几天回顾了spring相关的知识点,现在再来回顾下springmvc相关的知识点做一下总结. 问题总结 之前面试问题总结的那篇文章中,与springmv ...
- springMVC学习笔记--知识点总结1
以下是学习springmvc框架时的笔记整理: 结果跳转方式 1.设置ModelAndView,根据view的名称,和视图渲染器跳转到指定的页面. 比如jsp的视图渲染器是如下配置的: <!-- ...
- springMVC等小知识点记录。。。持续更新
1.springMVC 项目根路径访问页面配置 <!-- 表示当访问主页时自动转发到index控制器 --> <mvc:view-controller path="/&qu ...
- spring和springmvc的基础知识点
1.spring中使用@Service("userservice")如何在其他地方引用这个service? (1)getBean("userservice") ...
- springmvc 最权威的知识点
1.什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,C ...
- SpringMVC 视图解析器
SpringMVC 视图解析器 还记得SpringMVC 快速入门中,dispatcher-servlet.xml 配置的视图解析器么.它是SpringMVC 的核心知识点.本章节比较简单,明白视图解 ...
- springmvc与freemarker的整合
官方简介:FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具. 它不是面向最终用户的,而是一个Java ...
- 【mybatis深度历险系列】mybatis的框架原理+入门程序解析
在前面的博文中,小编介绍了springmvc的相关知识点,在今天这篇博文中,小编将介绍一下mybatis的框架原理,以及mybatis的入门程序,实现用户的增删改查,她有什么优缺点以及mybatis和 ...
- SpringBoot | 第六章:常用注解介绍及简单使用
前言 之前几个章节,大部分都是算介绍springboot的一些外围配置,比如日志配置等.这章节开始,开始总结一些关于springboot的综合开发的知识点.由于SpringBoot本身是基于Sprin ...
- springmvc 项目完整示例08 前台页面以及知识点总结
至此已经基本测试成功了,我们稍作完善,让它成为一个更加完整的项目 我们现在重新规划下逻辑 两个页面 一个登录页面 一个欢迎页面 登陆页面输入账号密码,登陆成功的话,跳转登陆成功 欢迎页面 并且,更新用 ...
随机推荐
- Leetcode 199
199. Binary Tree Right Side View Given the root of a binary tree, imagine yourself standing on the r ...
- Linux使用NAT/VMnet8(NAT)模式配置网卡ping通外网/主机/百度
vmnat 配置好后无法ping通打开共享 vmnet8 nat网卡配置 主机网卡配置 去掉网关
- 虚拟机安装windows 7 32位 + sqlserver 2000
安装包网盘地址:(https://pan.baidu.com/s/1ZoC-cTafBi8zZbCkvvmvNA?pwd=x1y2 提取码:x1y2 ) VMware 安装win7 32 位 http ...
- C 语言 数制
C 语言 数制 数制也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法.计算机处理的信息必须转换成二进制形式数据后才能进行存储和传输.计算机中,经常使用的进制有二进制.八进制.十进制.十六进 ...
- uniapp调起微信支付查询订单状态逻辑处理
首先看页面效果: <template> <view class="page"> <view class="page-bd"> ...
- 理解 Shell
理解 Shell shell 的父子关系 用于登录的某个虚拟控制器终端,或在 GUI 中运行终端仿真器时所启动的默认的交互 shell,是一个父 shell.本书到目前为止都是父 shell 提供 C ...
- doy 18 定时任务
1.定时任务 1.什么是定时任务 类似日常生活之中的闹钟:主要用于定时执行某些命令,达到定时处理数据的作用. 2.定时任务的软件的种类 1.linux操作系统自带的软件:crontab 2.第三方的定 ...
- squad经验总结
啊美丽卡:M1A2 - TANKM2A3 - BLDL/M2A3M1126 - SCKMATV - RWS(电摇),ZCC(手摇)MATV(TOW) - TOW车M989 - 补给卡/运兵卡 俄军 8 ...
- logrotate 切割Tomcat的catalina.out文件
使用logrotate进行切割. 在/etc/logrotate.d下,新建tomcatrotate,编辑tomatrotate,写入如下内容: /usr/local/tomcat/logs ...
- WEB开发日志1
2020/6/11 23:23 今天做系统时,用到二级菜单,菜单下方放了一个<iframe>标签,但二级菜单的菜单项太多,导致一部分菜单项被<iframe>覆盖,从而无法再选中 ...