一.概述 JSR-349 (Bean Validation 1.1)对数据验证进一步进行的规范,主要内容如下: 1.依赖注入验证 2.方法级别验证 二.依赖注入验证 spring提供BeanValidationPostProcessor用于支持依赖注入验证,使用如下: 配置 <bean class="org.springframework.validation.beanvalidation.BeanValidationPostProcessor"> <property…
一.hello world 相对于基于Controller接口的方式,基于注解方式的配置步骤如下: HandlerMapping 与HandlerAdapter 分别配置为RequestMappingHandlerMapping.RequestMappingHandlerAdapter(或者添加配置:<mvc:annotation-driven />,详见:<mvc:annotation-driven/>的作用) 定义Controller类,添加注解@Controller 实例化为…
一.概述 文件上传时,http请求头Content-Type须为multipart/form-data,有两种实现方式: 1.基于FormData对象,该方式简单灵活 2.基于<form>表单元素,method设为POST,enctype设置为multipart/form-data,在form表单上提交 web容器收到该请求时,须根据请求头将字节流解析为文件对象,spring mvc 提供了MultipartResolver.MultipartFile两个接口用于支持文件上传功能 二.Mult…
一.概述 除了依赖注入.方法参数,Bean Validation 1.1定义的功能还包括: 1.分组验证 2.自定义验证规则 3.类级别验证 4.跨参数验证 5.组合多个验证注解 6.其他 二.分组验证 通过分组,可实现不同情况下的不同验证规则,示例如下: 1.定义分组接口 public interface AddView { } public interface UpdateView { } 2.定义实体 public class Person { @Null(groups = AddView…
一.消息处理功能 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数据绑定机制 数据转换 Spring MVC处理JSON 数据格式化配置使用 数据校验 数据校验 Spring MVC数据绑定机制 Spring MVC解析JSON格式的数据: 步骤: 导入Jar包 注解标签的添加 前台传递JSON数据 对象前加@RequsetBody 数据转换 HttpMessageConverter<T>是Spring中新增的一个接口,负责将请求信息转换为一个对象<T>,将对象输出为响应信息. Spring MVC 处理JSON-向客户端发…
Spring MVC 3.0 返回JSON数据的方法1. 直接 PrintWriter 输出2. 使用 JSP 视图3. 使用Spring内置的支持// Spring MVC 配置<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters">  <…
上接Spring提供的BeanPostProcessor的扩展点-1继续学习. 一.Bean Validation框架简介 写道Bean Validation standardizes constraint definition, declaration and validation for the Java platform.大体意思是:Bean Validation 标准化了Java平台的约束定义.描述.和验证. 详细了解请参考:http://beanvalidation.org/ Bean…
上篇文章我们学习了官网中的1.2,1.3两小节,主要是涉及了容器,以及Spring实例化对象的一些知识.这篇文章我们继续学习Spring官网,主要是针对1.4小节,主要涉及到Spring的依赖注入.虽然只有一节,但是涉及的东西确不少.话不多说,开始正文. 文章目录 依赖注入: 测试setter方法注入 测试构造函数注入 疑问: 区别: 方法注入: 为什么需要方法注入: 通过注入上下文(applicationContext对象) 通过@LookUp的方式(也分为注解跟XML两种方式,这里只演示注解…
参考资料 Spring 教程 说在前面 什么样的架构,我们认为是一个优秀的架构? 判断准则:可维护性好,可扩展性好,性能. 什么叫可扩展性好? 答:在不断添加新的代码的同时,可以不修改原有代码,即符合开闭原则. 如何让程序的可维护性好,可扩展性好呢? 业界有一个公认的标准:高内聚,低耦合. 高内聚:就是尽量将代码写在与之功能描述一致的模块中.如User表的操作写在UserDAO里面,不要写在非UserDAO的类里面. 低耦合:就是尽量减少类与类之间的直接关系.(重点) 直接关系:Controll…