有关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 前台页面以及知识点总结
至此已经基本测试成功了,我们稍作完善,让它成为一个更加完整的项目 我们现在重新规划下逻辑 两个页面 一个登录页面 一个欢迎页面 登陆页面输入账号密码,登陆成功的话,跳转登陆成功 欢迎页面 并且,更新用 ...
随机推荐
- 微信小程序主包和分包的资源可以相互引用吗
了解主包.分包 整个小程序所有分包大小不超过20M;单个分包/主包大小不能超过 2M 主包: a. 放置默认启动页面&&tabBar页面, 以及一些分包需要用到的公共资源(如wxss. ...
- 1、Java程序概述
1.什么是Java? Java是一个完整的平台,有一个庞大的库,其中包含了很多可重用的代码,以及一个提供诸如安全性.跨操作系统的可移植性以及自动垃圾收集等服务的执行环境. 2.Java白皮书的关键术语 ...
- eclipse project is missing required java project
eclipse project is missing required java project eclipse版本: 2022-03 这情况就是maven包出了问题 具体的说不上 看我的解决方法: ...
- scroll-view 横向滚动无效
scroll-view的内层view元素需要: display: inline-block scroll-view的外层元素需要: white-space: nowrap 使得内部组件不换行.
- nodejs 反单引号用法(·)
这个反单引号就是数字1旁边(~)下面的那个符号,平时用得很少,虽然单引号和双引号是使用较多的,但我们还有第三个方案,就是ES6中的模板字符串(反引号). 在nodejs中用反单引号(·)主要基于以下作 ...
- 【搭建】【转】PPTP
https://blog.51cto.com/10802692/2177227?SOURCE=DRA
- 6、jmeter的配置元件:参数化--CSV文件
1.参数化一些数据,就需要用到csv文件 Filename:文件位置和文件名 (和jmeter同一个目录就不需要写哪个盘 直接写文件名字就可以了) File encoding:编码 Variable ...
- Pytorch Cross Entropy
Entropy Uncetainly measure of surprise higher entropy = less info \[Entropy = -\sum_i P(i)\log P(i) ...
- Matlab %伍
第五章:初级绘图进阶 Special Plots loglog semilogx semilogy plotyy hist bar pie polar Logarithm Plots x = lo ...
- 在 vuex 中建立一个 permission.js 文件用于合并静态和动态的路由规则
结果会获取完整的用户的路由规则 // 新建一个vuex模块来专门处理权限相关操作 import { constantRoutes, asyncRoutes } from "@/router& ...