当前位置: 首页 > news >正文

免费手机端网站模板下载工具微信文件传输助手网页版

免费手机端网站模板下载工具,微信文件传输助手网页版,移动互联网的应用论文,做网站有什么js特效目录 1. JSR303 2. JSR303中含有的注解 3. spring中使用JSR303进行服务端校验 3.1 导入依赖包 3.2 添加验证规则 3.3 执行校验 4. 分组验证 4.1 定义分组验证规则 4.2 验证时通过参数指定验证规则 4.3 验证信息的显示 5. SpringMVC定义Restfull接口 5.1 增加s…目录 1. JSR303 2. JSR303中含有的注解 3. spring中使用JSR303进行服务端校验 3.1 导入依赖包 3.2 添加验证规则 3.3 执行校验 4. 分组验证 4.1 定义分组验证规则 4.2 验证时通过参数指定验证规则 4.3 验证信息的显示  5. SpringMVC定义Restfull接口 5.1 增加spring配置 5.2 Controller 5.3 格式化返回数据 5.4 Restfull接口验证失败处理 1. 为什么使用全局一场处理 2. 异常处理流程 3. SpringMVC异常分类 4. 使用示例 4.1 SpringMVC自带的简单异常处理器 4.2 通过接口实现全局异常 4.3 使用注解方式定义全局异常 4.4 RestController异常处理 1. JSR303 JSR303是Java为Bean数据合法性校验提供给的标准框架已经包含在 JavaEE6.0中JSR303通过在Bean 属性中标注类似 NotNull Max 等标准的注解指定校验规则并通过标准的验证接口对 Bean进行验证。 2. JSR303中含有的注解 Null 被注释的元素必须为 null NotNull 被注释的元素必须不为 null AssertTrue 被注释的元素必须为 true AssertFalse 被注释的元素必须为 false Min(value) 被注释的元素必须是一个数字其值必须大于等于指定的最小值 Max(value) 被注释的元素必须是一个数字其值必须小于等于指定的最大值 DecimalMin(value) 被注释的元素必须是一个数字其值必须大于等于指定的最小值 DecimalMax(value) 被注释的元素必须是一个数字其值必须小于等于指定的最大值 Size(max, min) 被注释的元素的大小必须在指定的范围内 Digits (integer, fraction) 被注释的元素必须是一个数字其值必须在可接受的范围内 Past 被注释的元素必须是一个过去的日期 Future 被注释的元素必须是一个将来的日期 Pattern(regex,flag) 被注释的元素必须符合指定的正则表达式 Hibernate Validator 附加的注解 NotBlank(message ) 验证字符串非null且长度必须大于0 Email 被注释的元素必须是电子邮箱地址 Length(min,max) 被注释的字符串的大小必须在指定的范围内 NotEmpty 被注释的字符串的必须非空 Range(min,max,message) 被注释的元素必须在合适的范围内 注HIbernate Validator是JSR303的一个参考实现除了支持所有标准的校验注解外另外HIbernate Validator还有JSR-380的实现 3. spring中使用JSR303进行服务端校验 3.1 导入依赖包 dependencygroupIdorg.hibernate/groupIdartifactIdhibernate-validator/artifactIdversion6.0.7.Final/version /dependency 3.2 添加验证规则 3.3 执行校验 在请求处理方法中使用Validated或Valid注解要验证的对象并根据BindingResult判断校验是否通过 另外验证参数后必须紧跟BindingResult参数否则spring会在校验不通过时直接抛出异常。 注Valid和Validated的区别 两者的作用是一样的但Validated功能更丰富有分组功能。 4. 分组验证 学生ID号由数据库自增生成在新增学生时不需要要传入但在修改学生信息时需要通过ID号进行修改所以需要传达ID号再在这时就需要分组验证了。 4.1 定义分组验证规则 4.2 验证时通过参数指定验证规则 4.3 验证信息的显示  5. SpringMVC定义Restfull接口 在前后端分离开发中服务端通过Json对象返回数据给前端使用。 5.1 增加spring配置 !-- 转换器将返回消息转换为json -- bean classorg.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter property namemessageConverterslistref beanmappingJackson2HttpMessageConverter//list /property /bean!-- 处理中文编码spring通过该配置自动设置响应头-- bean idmappingJackson2HttpMessageConverterclassorg.springframework.http.converter.json.MappingJackson2HttpMessageConverter !--处理中文乱码以及避免IE执行AJAX时返回JSON出现下载文件-- property namesupportedMediaTypeslistvaluetext/html;charsetUTF-8/valuevaluetext/json;charsetUTF-8/valuevalueapplication/json;charsetUTF-8/value/list /property /bean 注spring为简化开发提供了丰富的组件在使用时需要将组件配置到spring中并为这些组件提供合适的参数。 5.2 Controller 5.3 格式化返回数据 在前后端分离模式的开发中提供给前端使用的数据或提供给第三方系统通常需要按双方协商定义的格式返回以方便解析。一般有两种处理方式1将用户Map组织格式化返回的数据2定义一个放回数据的实体来格式化返回的数据。 定义数据返回格式 输入http://localhost:8080/rest/loadStudent?sid6测试返回的数据。按自己测试数据输入条件 转换JSON时常用的注解 忽略JsonIgnore, 取别名JsonProperty(xxx), 指定转换的日期格式JsonFormat(pattern yyyy-MM-dd HH:mm:ss) 指定日期格式时还可以指定时区如JsonFormat(pattern yyyy-MM-dd HH:mm:ss, timezone GMT8) 说明GMT 就是格林威治标准时间的英文缩写(Greenwich Mean Time 格林尼治标准时间)是世界标准时间gmt8 是格林威治时间8小时中国所在时区就是gmt8 5.4 Restfull接口验证失败处理 1. 为什么使用全局一场处理 我们知道系统中异常包括编译时异常和运行时异常RuntimeException前者通过捕获异常从而获取异常信息后者主要通过规范代码开发、测试通过手段减少运行时异常的发生。在开发中不管是dao层、service层还是controller层都有可能抛出异常在springmvc中能将所有类型的异常处理从各处理过程解耦出来既保证了相关处理过程的功能较单一也实现了异常信息的统一处理和维护。 2. 异常处理流程 系统的dao、service、controller出现异常都通过throws Exception向上抛出最后由springmvc前端控制器交由异常处理器进行异常处理。springmvc提供全局异常处理器一个系统只有一个异常处理器进行统一异常处理。 3. SpringMVC异常分类 1使用Spring MVC提供的简单异常处理器SimpleMappingExceptionResolver 2实现Spring的异常处理接口HandlerExceptionResolver自定义自己的异常处理器 3使用ControllerAdvice ExceptionHandler 4. 使用示例 4.1 SpringMVC自带的简单异常处理器 SpringMVC中自带了一个异常处理器叫SimpleMappingExceptionResolver该处理器实现了HandlerExceptionResolver 接口全局异常处理器都需要实现该接口 1在spring-mvc.xml 中加入如下配置 !-- springmvc提供的简单异常处理器 --bean classorg.springframework.web.servlet.handler.SimpleMappingExceptionResolver!-- 定义默认的异常处理页面 需要在WEB-INF/jsp 下定义error.jsp 错误页面 --property namedefaultErrorView valueerror/!-- 定义异常处理页面用来获取异常信息的变量名也可不定义默认名为exception -- property nameexceptionAttribute valueex/!-- 定义需要特殊处理的异常这是重要点 -- property nameexceptionMappingspropsprop keyjava.lang.RuntimeExceptionerror/prop/props!-- 还可以定义其他的自定义异常 --/property/bean 2配置错误页面 在WEB-INF/jsp 目录下创建error.jsp 与上面的spring-mvc.xml中的配置相对应 % page contentTypetext/html;charsetUTF-8 languagejava % html headtitleTitle/title /head bodyh1系统异常请与管理员联系/h1 /body /html 3可以在Controller中直接抛出一个异常进行测试。 4.2 通过接口实现全局异常 通过实现异常处理处理接口HandlerExceptionResovler处理全局异常。 1 实现接口 Component public class GlobalException implements HandlerExceptionResolver {Overridepublic ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {ModelAndView mv new ModelAndView();mv.setViewName(error);if(ex instanceof RuntimeException) {mv.addObject(msg, ex.getMessage());}return mv;} } 注意 使用这种方式请将spring-mvc.xml中配置的全局异常删除。 4.3 使用注解方式定义全局异常 定义全局异常处理器: ControllerAdvice public class HandlerGlobalException {ExceptionHandlerpublic ModelAndView handler(Exception ex) {ModelAndView mv new ModelAndView();if(ex instanceof RuntimeException) {mv.addObject(msg, ex.getMessage());}mv.setViewName(error);//如果系统直接返回JSON格式的错误数据可以如下操作//mv.setView(new MappingJackson2JsonView());return mv;}} 4.4 RestController异常处理 处理上面的mv.setView(new MappingJackson2JsonView());这种方式来将错误信息使用JSON方式返回外还可以使用如下方式 RestControllerAdvice ControllerAdvice ResponseBody RestControllerAdvice public class HandlerRestGlobalException {ExceptionHandlerpublic MapString,Object handler(Exception e) {MapString,Object map new HashMap();if(e instanceof RuntimeException) {map.put(cod, -1);map.put(msg, e.getMessage());}return map;} } 注意返回JSON格式的数据需要Jackson的支持在pom.xml中加入jackson的依赖 dependencygroupIdcom.fasterxml.jackson.core/groupIdartifactIdjackson-databind/artifactIdversion2.13.3/version/dependency
http://www.yutouwan.com/news/453697/

相关文章:

  • 厦门服装商城网站建设手机小程序在哪里找
  • 如何替换网站的图片宁夏百度推广代理商
  • 网上商城网站开发报告四川省城乡与建设厅网站首页
  • wordpress 文章底部作者宁波seo网络推广报价
  • 创口贴设计网站官网天元建设集团有限公司第一建筑工程公司
  • app开发哪公司好毕节地seo
  • 网站蜘蛛池怎么做的邢台市网上家长学校
  • 钢铁网站建设自贡网站建设哪家好
  • 网站备案个人信息个人电影网站建设收益
  • 纸牌网站建设下载牛霸软件
  • 青岛定制网站设计公司专业嵌入式软件开发
  • 山东网站备案公司目前有哪些网络营销方式
  • 沈阳科技网站建设网站500错误是什么意思
  • 一个企业可以备案几个网站中国建设银行复核网站
  • 佛山招收网站设计seo推广优化官网
  • 网站建设怎么解析域名电子商务网站项目计划
  • 天河建设网站技术wordpress嵌入flash
  • 网站建设方案与报价天眼查企业信用查询
  • 新农村建设投诉网站佛山网站策划公司
  • 个人备案怎么做旅游网站网页设计技术学什么
  • 网站建设的颜色值宿迁房产网58同城网二手房
  • 网站关键词排名seo江门市住房和城乡建设局网站
  • 大连装修网站推广电子商务网站建设的步骤一般分为
  • flash工作室网站模板seo搜索引擎优化题库
  • 手机公众平台网站开发网站开发工具 比较
  • 1280的界面网站做多宽百度推荐现在为什么不能用了
  • 有什么做分销的几个网站陕西建设厅网站人才库
  • 阿里云网站模板送域名中国核工业第五建设有限公司海南
  • 江苏易销 网站建设淘宝网网页版登录入口在哪里
  • jquery做手机网站linux安装wordpress无法访问