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

网站优化怎么做的自己可以免费做网站吗

网站优化怎么做的,自己可以免费做网站吗,中国企业500强中国铁建,网站上添加图片的原则Controller 层优化四步曲 前言 在开发过程中#xff0c;Controller 层作为系统与外界交互的桥梁#xff0c;承担着接收请求、解析参数、调用业务逻辑、处理异常等职责。 然而#xff0c;随着业务复杂度的增加#xff0c;Controller 层的代码往往会变得臃肿且难以维护。 …Controller 层优化四步曲 前言 在开发过程中Controller 层作为系统与外界交互的桥梁承担着接收请求、解析参数、调用业务逻辑、处理异常等职责。 然而随着业务复杂度的增加Controller 层的代码往往会变得臃肿且难以维护。 为了提升代码的可读性、可维护性以及系统的健壮性我们可以通过以下四个步骤对 Controller 层进行改造 统一返回结构统一包装处理参数校验自定义异常与统一拦截异常 1.统一返回结构 在前后端分离的架构中统一的返回结构能够显著提升接口的可读性和可维护性。 通过定义统一的返回格式前端开发人员可以更清晰地判断接口调用是否成功而不需要依赖返回值的具体内容。 定义返回数据结构 首先我们可以定义一个通用的返回结构包含状态码、状态信息以及返回的数据。 以下是一个示例 Data NoArgsConstructor AllArgsConstructor public class ResultT {private Integer code;private String message;private T data;public static T ResultT success(T data) {return new Result(200, 操作成功, data);}public static T ResultT error(String message) {return new Result(500, message, null);} }在这个结构中code 表示状态码message 表示状态信息data 则是具体的返回数据。 通过这种方式所有的接口都可以返回统一的格式便于前端处理。 2.统一包装处理 为了进一步简化 Controller 层的代码我们可以使用 Spring 提供的 ResponseBodyAdvice 来统一处理返回值的包装。 这样Controller 层只需要返回业务数据而不需要手动封装返回结构。 使用 ResponseBodyAdvice 进行统一包装 RestControllerAdvice public class ResponseAdvice implements ResponseBodyAdviceObject {Overridepublic boolean supports(MethodParameter returnType, Class? extends HttpMessageConverter? converterType) {return true;}Overridepublic Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType,Class? extends HttpMessageConverter? selectedConverterType,ServerHttpRequest request, ServerHttpResponse response) {if (body instanceof Result) {return body;}return Result.success(body);} }通过这种方式所有的 Controller 返回值都会被自动包装成 Result 对象减少了重复代码。 3. 参数校验 参数校验是保证系统健壮性的重要手段。通过将参数校验逻辑从业务代码中剥离出来不仅可以减少代码的耦合度还能提升代码的可读性。 使用 Validated 进行参数校验 Spring 提供了 Validated 注解可以方便地对请求参数进行校验。 我们可以在 DTO 对象中定义校验规则并在 Controller 方法中使用 Validated 注解进行校验。 Data public class UserDTO {NotBlank(message 用户名不能为空)private String username;NotBlank(message 密码不能为空)Length(min 6, max 20, message 密码长度必须在6到20之间)private String password;Email(message 邮箱格式不正确)private String email; }RestController RequestMapping(/user) public class UserController {PostMapping(/register)public ResultString register(RequestBody Validated UserDTO userDTO) {// 业务逻辑return Result.success(注册成功);} }通过这种方式参数校验的逻辑与业务逻辑完全解耦代码更加清晰。 自定义异常与统一拦截异常 在实际开发中系统可能会抛出各种异常。 为了提升系统的健壮性我们可以自定义异常并通过统一的异常拦截器来处理这些异常。 自定义异常 我们可以根据业务需求定义不同的异常类例如 BusinessException 和 ForbiddenException public class BusinessException extends RuntimeException {public BusinessException(String message) {super(message);} }public class ForbiddenException extends RuntimeException {public ForbiddenException(String message) {super(message);} }统一异常拦截 通过 RestControllerAdvice 和 ExceptionHandler我们可以统一处理系统中的异常并返回统一的错误信息。 RestControllerAdvice public class GlobalExceptionHandler {ExceptionHandler(BusinessException.class)public ResultString handleBusinessException(BusinessException ex) {return Result.error(ex.getMessage());}ExceptionHandler(ForbiddenException.class)public ResultString handleForbiddenException(ForbiddenException ex) {return Result.error(无权访问);}ExceptionHandler(Exception.class)public ResultString handleException(Exception ex) {return Result.error(系统异常请稍后重试);} }通过这种方式所有的异常都会被统一处理并返回给前端统一的错误格式。 总结 通过对 Controller 层的改造我们可以显著提升代码的可读性、可维护性以及系统的健壮性。 统一的返回结构、自动化的参数校验、自定义异常与统一拦截异常这些措施不仅减少了重复代码还使得代码更加清晰和易于维护。 在实际开发中我们可以根据具体的业务需求进一步优化和扩展这些策略。 – 欢迎点赞、关注、转发、收藏【我码玄黄】各大平台同名。
http://www.w-s-a.com/news/24943/

相关文章:

  • 广州网站建设工作室wordpress log
  • 网站后台添加wordpress h1标签优化
  • 自己做网站都需要什么高密 网站建设
  • 网站语言选择郑州本地做团购的网站
  • dw网页设计模板图片谷歌wordpress优化
  • 网站seo优化要怎么做礼品公司怎么做网站
  • 做网页网站需要钱吗提供常州微信网站建设
  • 网站建设文化效果广东网站建设哪家有
  • 毕业设计做网站怎样做特别一点在线网页制作软件
  • html网站代码上海这边敲墙拆旧做啥网站的比较多
  • 微网站怎么用在线crm管理系统
  • 中国城乡建设部人力网站首页如何利用某个软件做一个网站
  • 个人承接网站建设wordpress editor
  • 建站主机 wordpress专业的菏泽网站建设公司
  • 网站响应时间 标准网站建设色调的
  • 网站开发的合同网站建设 设计
  • 网站开发设置网页端口申请免费个人网站空间
  • 制作广告网站的步骤云服务器做网站
  • ipv6可以做网站吗东莞网站建站推广
  • 注册功能的网站怎么做做网站容易还是编程容易
  • wordpress建立目录seo编辑培训
  • 网站怎么群发广州现在可以正常出入吗
  • 微信有网站开发吗多语种网站
  • 深圳网站设计 建设首选深圳市室内设计公司排名前50
  • 上海网站建设 觉策动力wordpress接口开发
  • 网站建设服务器的选择方案小型视频网站建设
  • 江宁做网站价格扬州立扬计算机培训网站建设怎么样
  • 手表网站背景开发新客户的十大渠道
  • 定制网站设计wordpress写的网站
  • p2p网站建设公司排名成都装饰公司