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

网站建设高上海优质建筑设计网公司

网站建设高,上海优质建筑设计网公司,重庆网站开发公,wordpress英文版切换中文版sprigboot-new-coding-standards介绍SpringBoot脚手架#xff0c;遵守严格的代码规范。规范详细说明1.遵循标准RESTful API2.异常采用枚举进行封装(业务内部异常往上抛#xff0c;返回客户端需要将对应的异常转换为具体的状态的#xff0c;这里介绍Spring提供的全局异常处理…sprigboot-new-coding-standards介绍SpringBoot脚手架遵守严格的代码规范。规范详细说明1.遵循标准RESTful API2.异常采用枚举进行封装(业务内部异常往上抛返回客户端需要将对应的异常转换为具体的状态的这里介绍Spring提供的全局异常处理)package org.niugang.coding.advice;import lombok.extern.slf4j.Slf4j;import org.niugang.coding.enums.ExceptionEnum;import org.niugang.coding.exception.ServiceException;import org.niugang.coding.vo.ExceptionResult;import org.springframework.http.HttpStatus;import org.springframework.http.ResponseEntity;import org.springframework.validation.BindException;import org.springframework.web.bind.MethodArgumentNotValidException;import org.springframework.web.bind.annotation.ControllerAdvice;import org.springframework.web.bind.annotation.ExceptionHandler;import javax.validation.ConstraintViolationException;import java.util.HashMap;import java.util.Map;/*** 全部异常处理** author Created by niugang on 2018/12/26/12:19*/ControllerAdviceSlf4jpublic class BasicExceptionHandler {/*** 具体业务层异常** param e 业务异常* return ResponseEntity*/ExceptionHandler(ServiceException.class)public ResponseEntity handleException(ServiceException e) {/*** 响应的状态码为枚举中定义的状态码*/return ResponseEntity.status(e.getExceptionEnum().value()).body(new ExceptionResult(e.getExceptionEnum()));}/*** 业务处理未知异常** param e 异常* return ResponseEntity*/ExceptionHandler(Exception.class)public ResponseEntity exceptionResultResponseEntity(Exception e) {//所有参数异常//在对象上绑定校验如(UserDTO)if (e instanceof BindException || e instanceof MethodArgumentNotValidException || e instanceof IllegalArgumentException) {log.error(参数校验失败:{}, e);return ResponseEntity.status(ExceptionEnum.PARAMS_VALIDATE_FAIL.value()).body(new ExceptionResult(ExceptionEnum.PARAMS_VALIDATE_FAIL));}//方法上参数校验失败if (e instanceof ConstraintViolationException) {ConstraintViolationException ex (ConstraintViolationException) e;Map res new HashMap(16);res.put(status, HttpStatus.BAD_REQUEST.value());res.put(message, ex.getMessage());res.put(timestamp, System.currentTimeMillis());return ResponseEntity.status(HttpStatus.BAD_REQUEST.value()).body(res);}log.error(服务器内部异常:{}, e);/** 响应的状态码为枚举中定义的状态码*/return ResponseEntity.status(ExceptionEnum.BUSINESS_DEAL_FAIL.value()).body(new ExceptionResult(ExceptionEnum.BUSINESS_DEAL_FAIL));}}value 对应响应状态码message 错误描述NoArgsConstructorAllArgsConstructorpublic enum ExceptionEnum {/****/PARAMS_VALIDATE_FAIL(400, 参数校验失败),BUSINESS_DEAL_FAIL(500, 业务处理失败);/*** 响应状态码*/int value;/*** 响应描述*/String message;public int value() {return this.value;}public String message() {return this.message;}}参数错误对应400状态码3.遵循严格的pojo,vo,dto(来自阿里java规范)4.建议提倡使用lomback(让你的代码,更加简洁干净)5.对于日志记录采用Slf4j以前可能是private static final Logger logger LoggerFactory.getLogger(MeetingInfoController.class);6.对于响应采用ResponseEntity,Spring已经封装好的在一定程度上是能满足业务场景的PostMappingpublic ResponseEntity save(Valid RequestBody UserDTO userDTO) {userService.insert(userDTO);return ResponseEntity.ok().build();}7.RESTful API对应以下Spring请求注解GetMapping 查询PostMapping 新增PutMapping 修改DeleteMapping 删除8.进行必要的参数校验新增参数校验普通查询也有必要如分页查询pageSize不做限制可能导致数据查询异常或慢查询9.建议直接只用框架自带封装好的API,如RedisTemplate,RabbitTemplate,KafkaTemplate(自己写的通用的可能某些地方考虑不全)10.使用注解事务Transactionalimport org.springframework.transaction.annotation.Transactional;//spring的注解不是java注解软件架构软件架构说明安装教程xxxxxxxxxxxx使用说明xxxxxxxxxxxx参与贡献Fork 本仓库新建 Feat_xxx 分支提交代码新建 Pull Request码云特技使用 Readme_XXX.md 来支持不同的语言例如 Readme_en.md, Readme_zh.mdGVP 全称是码云最有价值开源项目是码云综合评定出的优秀开源项目
http://www.yutouwan.com/news/460974/

相关文章:

  • 百度浏览器官网郑州网站seo厂家
  • 网站建设的主题如何建设网站济南兴田德润o简介电话
  • 陕西做网站百度网首页官网
  • 各大网站域名wordpress3.9.1中文
  • 建设免费二级网站怎么免费做网站不要域名
  • 网站设计 方案网站上的地图导航怎么做的
  • 天猫秘券网站怎么做网站关键字怎么分割
  • 泰安市住房和城乡建设厅网站wordpress同步腾讯微博
  • 三亚做网站推广上海专业的网站公
  • 上海网站备案多久石家庄到底怎样了
  • 网站icp备案查询截图谷歌app官方下载
  • 网站建设版块分类网站建设gzdlzgg
  • 河南省安阳市安阳县宁德seo推广
  • 温州网站建设制作公司国外网站开发发展历程
  • 网站开发范例文档品牌策划网站建设
  • 杭州海淀区网站建设中国水电建设招标网站
  • 怎么提高网站访问速度聊城网站网站建设
  • 特产网站建设策划书设计型网站
  • 东莞个人网站制作网站报价内容
  • 免费试用网站有哪些惠州网站建设 鑫
  • 怎么进入网站管理系统做翻译 网站
  • 网站建设字体wordpress删除空关键词
  • 网页制作网站教程在线定制网站官网
  • 网站数据库一般多大美工培训班要多少学费
  • 起点网站建设网站首页代码
  • 扬州网站建设要多少钱网络推广方案设计
  • 国外域名拍卖网站263企业邮箱登录登录入口
  • 电影视频网站怎么做网站开发的技术要求
  • 简历旅游网站开发经验网站策划模版
  • 电商网站开发平台需要多少企业建站模版