有关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 前台页面以及知识点总结
至此已经基本测试成功了,我们稍作完善,让它成为一个更加完整的项目 我们现在重新规划下逻辑 两个页面 一个登录页面 一个欢迎页面 登陆页面输入账号密码,登陆成功的话,跳转登陆成功 欢迎页面 并且,更新用 ...
随机推荐
- linux 文件系统和包管理工具rpm,yum
文件系统 1.什么是文件系统? 文件系统是一种存储和组织计算机中数据文件的机制或方法,他使得对计算机内的数据的存储.访问和查找变得更容易,简单. 文件系统落到计算机里其实就是一个应用软件 ext2 e ...
- jmeter性能测试小小实践
一.测试步骤 测试计划 / 线程组 / http请求 / 监听器 / 运行脚本 / 查看报告 二.线程组 线程组:虚拟用户数 ramp up period:设置虚拟用户数需要多长的时间全部启动,如果线 ...
- 3.Vue常用特性
1.表单操作 (1)基于Vue的表单操作 input 单行文本 处理方式就是使用 v-model双向绑定data中的数据 1 <input type="text" v-mod ...
- tensorflow出现Failed to get convolution algorithm, cuDNN failed to initialize
网上大多的教程是说tensorflow的版本过高,或者说cuda和cudnn的版本不对,需要降级,但这样会很麻烦!!! 以下值得推荐!!! 解决方法一:在代码前加上下面的代码 from tensorf ...
- BLE目录
CH58x/CH57x 蓝牙从机篇(Peripheral) CH573 CH582 CH579蓝牙从机(Peripheral)/主机(Central)例程讲解一(蓝牙主从机收发数据接口说明) CH57 ...
- wmware桥接模式
配置思路(桥接模式) 准备一个与PC机同网段且未被占用的IP地址 将虚拟机的网络模式修改为桥接模式(默认为NAT模式) 修改网卡配置文件,配置为准备好的IP地址,并重启网络服务. 配置DNS解析服务器 ...
- FIRE2023:殁亡漫谈
FIRE2023:殁亡漫谈 读书的时候,想到殁亡,脑海涌出一则喜欢的遗言: 钱花完了,我走了.签名 如果可能牵涉到旁人(比如殁在旅馆里),就再立一则: 我的殁与店家无关. 签名 然后放下Kindle, ...
- 记录linux上无法和本地传输文件
在学习docker搭建nacos的过程中,涉及到上传本地文件,但是包括从xshell直接拖拽还是xftp上传,都是失败, 最后百度查找多种不同的结果,最后实验下来是文件夹没有权限的问题. 解决步骤如下 ...
- NameNode启动问题:Failed to load an FSImage file!
NameNode启动问题:Failed to load an FSImage file! 2022-01-23 13:35:53,807 FATAL org.apache.hadoop.hdfs.se ...
- [ACTF2020 新生赛]Include 1
首先进入靶场可以看到trip 查看源码 点击进入提示我们能不能找到flag 可以看到这里是文件包含,想着包含index.php但是根目录是自动索引的,无论输入什么都是trip页面 又想着包含flag. ...