一.概述 JSR-349 (Bean Validation 1.1)对数据验证进一步进行的规范,主要内容如下: 1.依赖注入验证 2.方法级别验证 二.依赖注入验证 spring提供BeanValidationPostProcessor用于支持依赖注入验证,使用如下: 配置 <bean class="org.springframework.validation.beanvalidation.BeanValidationPostProcessor"> <property…
一.概述 文件上传时,http请求头Content-Type须为multipart/form-data,有两种实现方式: 1.基于FormData对象,该方式简单灵活 2.基于<form>表单元素,method设为POST,enctype设置为multipart/form-data,在form表单上提交 web容器收到该请求时,须根据请求头将字节流解析为文件对象,spring mvc 提供了MultipartResolver.MultipartFile两个接口用于支持文件上传功能 二.Mult…
一.消息处理功能 Spring提供MessageSource接口用于提供消息处理功能: public interface MessageSource { String getMessage(String code, Object[] args, String defaultMessage, Locale locale); String getMessage(String code, Object[] args, Locale locale) throws NoSuchMessageExcepti…
一.概述 Spring MVC异常处理功能的作用为:捕捉处理器的异常,并映射到相应视图 有4种方式: SimpleMappingExceptionResolver:通过配置的方式实现异常处理,该方式简单.无侵入性,但仅能获取到异常信息 HandlerExceptionResolver:通过实现该接口并实例化为bean实现异常处理,该方式简单.无侵入性,并能够获取关于异常的更详细信息 @ExceptionHandler:通过在控制器类或控制器类的基类中添加异常处理方法,从而实现单个控制器范围的异常…
一.概述 在为前端提供http接口时,通常返回的数据需要统一的json格式,如包含错误码和错误信息等字段. 该功能的实现有四种可能的方式: AOP 利用环绕通知,对包含@RequestMapping注解的方法统一处理 优点:配置简单.可捕获功能方法内部的异常 缺点:aop不能修改返回结果的类型,因此功能方法的返回值须统一为Object类型 filter 在过滤器层统一处理 优点:配置简单 缺点:无法识别异常结果,须对返回结果进行额外的反序列化 拦截器  获取返回值不方便,且无法获取到String…
一.hello world 相对于基于Controller接口的方式,基于注解方式的配置步骤如下: HandlerMapping 与HandlerAdapter 分别配置为RequestMappingHandlerMapping.RequestMappingHandlerAdapter(或者添加配置:<mvc:annotation-driven />,详见:<mvc:annotation-driven/>的作用) 定义Controller类,添加注解@Controller 实例化为…
一.概述 spring类型转换有两种方式: PropertyEditor:可实现String<--->Object 之间相互转换 Converter:可实现任意类型的相互转换 类型转换的过程中,当两者同时存在时,spring首先查找PropertyEditor进行类型转换,如果没有找到,则再查找Converter进行转换 二.PropertyEditor 1.基本介绍 PropertyEditor用于 String<--->Object 之间相互转换,spring内建了一些常用的P…
spring mvc介绍:其实spring mvc就是基于servlet实现的,只不过他讲请求处理的流程分配的更细致而已. spring mvc核心理念的4个组件: 1.DispatcherServlet:负责接受所有的请求,就像普通的servlet一样,此接口只是简单的负责处理接受请求. 2.HandlerMapping:当接受到请求后,由此组件负责解析请求,知道该请求要访问那个具体的Controller(具体的Servlet). 3.HandlerAdaper:负责调用具体的Controll…
Spring MVC工作流程图   图一   图二    Spring工作流程描述       1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获:       2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI).然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecuti…
Spring MVC 是典型的mvc架构,适合web开发. controler 输入输出的控制器,也是对外view提供数据的接口,调用service层. model 数据,由bean组成(相应表),关联dao层. Spring MVC 的核心是DispatcherServlet ,用来截获你配置的请求,分发给对应的处理器去处理并返回结果. 须要配置:比如 <servlet> <servlet-name>springMVC</servlet-name> <servl…