1.参数绑定:(从请求中接收参数)
  1)默认支持的类型:Request,Response,Session,Model
  2)基本数据类型(包含String)
  3)Pojo类型
  4)Vo类型
  5)Converter自定义转换器
  6)数组
  7)List

2.controller方法返回值(指定返回到哪个页面(view), 指定返回到页面的数据(model))
  1)ModelAndView
    modelAndView.addObject("itemList", list); 指定返回页面的数据
    modelAndView.setViewName("itemList"); 指定返回的页面
  2)String(推荐使用)
    返回普通字符串,就是页面去掉扩展名的名称, 返回给页面数据通过Model来完成
    返回的字符串以forward:开头为请求转发
    返回的字符串以redirect:开头为重定向
  3)返回void(使用它破坏了springMvc的结构,所以不建议使用)
    可以使用request.setAttribut 来给页面返回数据
    可以使用request.getRquestDispatcher().forward()来指定返回的页面
    如果controller返回值为void则不走springMVC的组件,所以要写页面的完整路径名称

相对路径:相对于当前目录,也就是在当前类的目录下,这时候可以使用相对路径跳转
绝对路径:从项目名(Application context)后开始.
  在springMvc中,不管是forward还是redirect,凡是以/开头的为绝对路径,不以/开头的为相对路径
  例如:forward:/items/itemEdit.action 为绝对路径;forward:itemEdit.action 为相对路径

3.架构级别异常处理:
  主要为了防止项目上线后给用户抛500等异常信息,所以需要在架构级别上整体处理.hold住异常
  首先自定义全局异常处理器实现HandlerExceptionResolver接口
  在spirngMvc.xml中配置生效

4.上传图片:
  1)在tomcat中配置虚拟图片服务器
  2)导入fileupload的jar包
  3)在springMvc.xml中配置上传组件
  4)在页面上编写上传域,更改form标签的类型
  5)在controller方法中可以使用MultiPartFile接口接收上传的图片
  6)将文件名保存到数据库,将图片保存到磁盘中

5.Json数据交互:
  需要加入jackson的jar包
  @Requestbody:将页面传到controller中的json格式字符串自动转换成java的pojo对象
  @ResponseBody:将java中pojo对象自动转换成json格式字符串返回给页面

6.RestFul支持:
  就是对url的命名标准,要求url中只有能名词,没有动词(不严格要求),但是要求url中不能用问号?
  传参参数:
    页面:${pageContext.request.contextPath }/items/itemEdit/${item.id}
    方法: @RquestMapping("/itemEdit/{id}")
    方法: @PathVariable("id") Integer idd

7.拦截器:
  作用:拦截请求,一般做登录权限验证时用的比较多
  1)需要编写自定义拦截器类,实现HandlerInterceptor接口
  2)在spirngMvc.xml中配置拦截器生效

8.登录权限验证:
  1)编写登录的controller, 编写跳转到登录页面的方法, 编写登录验证方法
  2)编写登录页面
  3)编写拦截器

运行过程:
  1)访问随意一个页面,拦截器会拦截请求,会验证session中是否有登录信息
    如果已登录,放行
    如果未登录,跳转到登录页面
  2)在登录页面中输入用户名,密码,点击登录按钮,拦截器会拦截请求,如果是登录路径放行
    在controller方法中判断用户名密码是否正确,如果正确则将登录信息放入session

Spring MVC基本配置和实现(四)的更多相关文章

  1. Spring MVC 事务配置

    Spring MVC事务配置 要了解事务配置的所有方法,请看一下<Spring事务配置的5种方法> 本文介绍两种配置方法: 一.      XML,使用tx标签配置拦截器实现事务 一.   ...

  2. spring mvc+myBatis配置详解

    一.spring mvc Spring框架(框架即:编程注解+xml配置的方式)MVC是Spring框架的一大特征,Spring框架有三大特征(IOC(依赖注入),AOP(面向切面),MVC(建模M- ...

  3. Maven 工程下 Spring MVC 站点配置 (三) C3P0连接池与@Autowired的应用

    Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 前两篇文章主要是对站点和数据库操作配置进行了演示,如果单 ...

  4. Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作

    详细的Spring MVC框架搭配在这个连接中: Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 这篇主 ...

  5. Maven 工程下 Spring MVC 站点配置 (一)

    最近,查找一些具体资料时,虽然会有很多,但是系统的却很少,尤其是对maven 下 spring mvc 站点搭建的配置,总是说的很多但让新手一目了然的步骤却少之又少. 对此闲暇时整理了一下,做了一套较 ...

  6. Spring mvc系列一之 Spring mvc简单配置

    Spring mvc系列一之 Spring mvc简单配置-引用 Spring MVC做为SpringFrameWork的后续产品,Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块 ...

  7. Spring MVC的配置与DispatcherServlet的分析

    Spring MVC是一款Web MVC框架,是目前主流的Web MVC框架之一. Spring MVC工作原理简单来看如下图所示: 接下来进行Spring MVC的配置 首先我们配置Spring M ...

  8. Spring学习日志之Spring MVC启动配置

    对DispatcherServlet进行配置 Spring MVC的配置实际上就是对DispatcherServlet的配置 public class DispatcherServletConfig ...

  9. Spring MVC的配置和使用

    Spring MVC的配置和使用 笔记仓库:https://github.com/nnngu/LearningNotes Spring MVC需要的jar包 文章中 Spring MVC 使用的版本是 ...

随机推荐

  1. Mac 10.12安装SecureCRT

    下载: (链接: https://pan.baidu.com/s/1eSNBoFC 密码: sztc) 安装参考: http://www.cnblogs.com/EasonJim/p/7568734. ...

  2. 学习Linux最简单的方法

    大多数初学者在刚刚接触Linux都会有非常陌生的感觉.往往会有一些疑惑和问题.而我们就沿着这些问题,从远及近,从宏观到微观来理解Linux的简洁和美丽. 问题1:Winows有注册表,为什么Linux ...

  3. hibernate一对多多对一双向

    注意事项:一对多,多对一双向关联,在一的一方的多的getSet集合上的oneToMany上加上mappedBy.告诉hibernate由多的方一来维护关系.这也符合逻辑 ,本来外键就是在加在多的一方. ...

  4. mongo 授权访问

    1.授权远程也可以访问 - 首先修改mongodb的配置文件 让其监听所有外网ip 编辑文件:/etc/mongodb.conf 修改后的内容如下: bind_ip = 0.0.0.0 port = ...

  5. preg_match 与 preg_match_all

    案例一: <?php $str = 'abcdef123456'; preg_match('/[a-z1-9]+/', $str, $res); var_dump($res); preg_mat ...

  6. Jmeter之测试报告

    当我们完成测试后,需要通过报告来查看测试结果 一.聚合报告 Label:每个JMeter的element的Name值.例如HTTP Request的Name #Samples:发出请求数量.例如:如第 ...

  7. 四大组件之Service

    1 通过startService 1.1 与调用者相对独立,没有返回,用于播放音乐,下载文件 1.2 如果是调用者自己直接退出而没有调用stopService的话,Service会一直在后台运行.下次 ...

  8. javac的词法分析

      1.词法分析将Java源文件的字符流转变为对应的Token流.   JavacParser类规定了哪些词是符合Java语言规范规定的词,而具体读取和归类不同词法的操作由Scanner类来完成.   ...

  9. varchar(n) 和 int(n)

    mysql(测试版本为5.6) 的varchar必须加范围,否则报错: mysql> CREATE TABLE test ( -> id INT, -> name VARCHAR - ...

  10. rails学习笔记: rake db 相关命令

    rails学习笔记: rake db 命令行 rake db:*****script/generate model task name:string priority:integer script/g ...