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. android4.0以上访问网络不能在主线程中进行以及在线程中操作UI的解决方法

    MONO 调用一个线程操作UI 然后报Only the original thread that created a view hierarchy can touch its views.错误 goo ...

  2. 08 Java 集合的线程安全问题

    1 Java中的集合 Java中的集合分为同步的集合(线程安全)和线程不安全的集合 例如 : ArrayList和Vector的区别: 一.同步性:Vector是线程安全的,也就是说是同步的,而Arr ...

  3. 安卓加固之so文件加固

    一.前言 最近在学习安卓加固方面的知识,看到了jiangwei212的博客,其中有对so文件加固的两篇文章通过节加密函数和通过hash段找到函数地址直接加密函数,感觉写的特别好,然后自己动手实践探索s ...

  4. Guava之RateLimiter的设计

    Guava源码中很详尽的解释了RateLimiter的概念. 从概念上看,限流器以配置速率释放允许的请求(permit).如有必要,调用acquire()将会阻塞知道一个允许可用.一旦被获取(acqu ...

  5. throws 与 throw

    摘录自:http://blog.csdn.net/ronawilliam/article/details/3299676 void doA() throws Exception1, Exception ...

  6. Mysql的with rollup分组统计功能(5.1以上版本)

    RollUp是上卷功能,类似于数据挖掘中的上卷操作. ROLLUp的功能和Order by功能是互斥的. mysql> SELECT year, SUM(profit) FROM sales G ...

  7. vue做的简单购物车

    <code><!DOCTYPE html><html><head lang="en"> <meta charset=" ...

  8. 分享一个好用的dns

  9. select2 下拉搜索 可编辑可搜索 / 只可搜索

    官网 (http://select2.github.io/examples.html) <!--引入select2需要的文件--> <script type="text/j ...

  10. c# 删除文件,清理删除文件

    c# 删除程序占用的文件,清理删除文件,彻底删除文件,解除文件占用 文件打开时,以共享读写模式打开 FileStream inputStream = new FileStream(name, File ...