0%

Spring MVC 为文件上传提供了直接的支持,这种支持是通过即插即用的 MultipartResolver 实现的。Spring 用Jakarta Commons FileUpload 技术实现了一个MultipartResolver 实现类:CommonsMultipartResovler

Spring MVC 上下文中默认没有装配 MultipartResovler,因此默认情况下不能处理文件的上传工作,如果想使用 Spring的文件上传功能,需现在上下文中配置 MultipartResolver

同时,为了让 CommonsMultipartResovler 正确工作,必须先将 Jakarta Commons FileUpload 及 Jakarta Commons io的类包添加到类路径下。

阅读全文 »

本文基于SpringMVC的helloworld项目来讲解演示。

1. 映射请求

1.1 @RequestMapping 映射请求

Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,其在控制器的类定义及方法定义处都可标注。

  • 类定义处:提供初步的请求映射信息,相对于 WEB 应用的根目录;
  • 方法处:提供进一步的细分映射信息,相对于类定义处的 URL。若类定义处未标注 @RequestMapping,则方法处标记的 URL 相对于WEB 应用的根目录。
阅读全文 »

1. 自定义拦截器

假如我们在访问有些网页的时候可能会提示无权访问,因为我们的访问请求会被拦截器拦截到,并给我们显示无权访问的提示页面。下面我们使用SpringMVC来演示一下自定义拦截器的使用。

Spring MVC可以使用拦截器对请求进行拦截处理,用户可以自定义拦截器来实现特定的功能,自定义的拦截器必须实现HandlerInterceptor接口

阅读全文 »

Spring MVC 通过 HandlerExceptionResolver 处理程序的异常,包括 Handler 映射数据绑定以及目标方法执行时发生的异常

其中HandlerExceptionResolver的实现类如下图所示:
在这里插入图片描述

阅读全文 »

1. 数据模型处理

Spring MVC 提供了以下几种途径输出模型数据:

  • ModelAndView: 处理方法返回值类型为 ModelAndView时, 方法体即可通过该对象添加模型数据;
  • Map 及 Model: 入参为org.springframework.ui.Model、org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map中的数据会自动添加到模型中;
  • @SessionAttributes: 将模型中的某个属性暂存到HttpSession 中,以便多个请求之间可以共享这个属性;
  • @ModelAttribute: 方法入参标注该注解后, 入参的对象就会放到数据模型中。
阅读全文 »

1. 数据转换

1.1 默认数据转换器

Spring MVC 上下文中内建了很多转换器,可完成大多数 Java 类型的转换工作。

比如我们在页面的文本框上输入了整数或者是布尔值的数据,虽然在文本框的格式依旧是字符串,但是SpringMVC支持将这些数据转成对应的格式。

比如现在有如下的页面代码如下所示:

阅读全文 »

1. 创建数据库表

1
2
3
4
5
6
CREATE TABLE tbl_employee (
id int(11) PRIMARY KEY AUTO_INCREMENT,
last_name varchar(255) ,
gender char(1) ,
email varchar(255)
);
阅读全文 »

1. 事务

1.1 概念

事务就是逻辑上的一组操作,组成这组操作的各个单元,要么全都成功,要么全都失败。

1.2 特性

  • 原子性:事务不可分割,整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚到事务开始前的状态,就像事务出来没有被执行过一样;
  • 一致性:事务执行前后数据完整性保持一致;
  • 隔离性:一个事务的执行不应该受到其他事务的干扰,指两个事务之间的隔离程度;
  • 持久性:一旦事务结束,数据就持久化到数据库。
阅读全文 »