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

龙岩网站推广网站监测

龙岩网站推广,网站监测,上线一个网站需要哪些条件,做网站的网站java 17 cloud 2023.0.0 boot 3.2.0 cloud alibaba 2022.0.0.0-Rc2 maven 3.9 mysql 8.0 一、创建项目 new project 聚合总父工程名字 字符编码 4.注解生效激活 5.java编译版本选17 6.file type 过滤 删除src 1.1maven中的dependencyManager与dependencies 一般在项目最…

java 17+ cloud 2023.0.0 boot 3.2.0 cloud alibaba 2022.0.0.0-Rc2 maven 3.9+ mysql 8.0+

一、创建项目

  1. new project

  2. 聚合总父工程名字

  3. 字符编码

4.注解生效激活

5.java编译版本选17

6.file type 过滤

删除src

1.1maven中的dependencyManagerdependencies

一般在项目最顶层pom中看到dependencyManager能让所有在子项目中引用一个依赖而不显示的列出版本号,maven会沿着父子层次向上走,知道找到一个拥有dependencyManagement元素的项目,然后就会使用这个dependencyManagement元素中指定的版本号

好处:如果有多个子项目都引用一样依赖,则可以避免在每个使用的子项目里面都声明一个版本号

  1. 当想升级或切换另一个版本的时候,只需要在顶层父容器更新,而不需要一个一个修改子项目

  2. 如果某个子项目需要另外一个版本,只需要声明version就可。

1.2跳过单元测试配置

1.3创建子项目

步骤

  1. 建module

  2. 改pom

  3. 写yml

  4. 主启动

  5. 写业务

1.4Swagger3

  1. 1.加注解

注解标注位置作用
@Tagcontroller类标识controller作用
@Parameter参数标识参数作用
@Parameters参数参数多重说明
@Schemamodle层的javaBean描述魔性作用及每个属性
@Operation方法描述方法作用
@ApiRestponse方法描述响应状态码等

2.含分组迭代的Config配置类

package com.atguigu.cloud.config;import io.swagger.v3.oas.models.ExternalDocumentation;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class Swagger3Config
{@Beanpublic GroupedOpenApi PayApi(){return GroupedOpenApi.builder().group("支付微服务模块").pathsToMatch("/pay/**").build();}@Beanpublic GroupedOpenApi OtherApi(){return GroupedOpenApi.builder().group("其它微服务模块").pathsToMatch("/other/**", "/others").build();}/*@Beanpublic GroupedOpenApi CustomerApi(){return GroupedOpenApi.builder().group("客户微服务模块").pathsToMatch("/customer/**", "/customers").build();}*/@Beanpublic OpenAPI docsOpenApi(){return new OpenAPI().info(new Info().title("cloud2024").description("通用设计rest").version("v1.0")).externalDocs(new ExternalDocumentation().description("www.hhf.com").url("https://yiyan.baidu.com/"));}
}

3.调试方式

http://localhost:8001/swagger-ui/index.html

1.5优化

1.完善日期时间格式

可以在相应类的属性上面使用@JsonFormat注解

@Column(name = "create_time")@Schema(title = "创建时间")@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")private Date createTime;@Column(name = "update_time")@Schema(title = "更新时间")@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")private Date updateTime;

如果是Spring Boot项目,也可以在application.yml文件中指定

spring:jackson:date-format:yyyy-MM-dd HH:mm:sstime-zone: GMT+8

2.统一返回值

思路:定义返回标准格式,3大标配

code状态值:由后端统一定义各种返回结果的状态码

message描述:本次接口调用的结果描述

data数据:本次返回的数据

扩展:接口调用时间之类,timestamp:接口调用时间

步骤:

1.新建枚举类ResturnCodeEnmu

HTTP请求返回状态码

ReturnCodeEnum

package com.atguigu.cloud.resp;import lombok.Getter;import java.util.Arrays;@Getter
public enum ReturnCodeEnum {RC999("999","操作xxx失败"),RC200("200", "success"),RC201("201", "服务器开启降级保护,请稍后再试"),RC202("202", "热点参数限流,请稍后再试"),RC203("203", "系统规则不满足要求,请稍后再试"),RC204("204", "授权规则不通过,请稍后再试"),RC403("403", "无访问权限,请联系管理员授予权限"),RC401("401", "匿名用户访问无权限资源时的异常"),RC404("404", "404页面找不到的异常"),RC500("500", "系统异常请稍后再试"),RC375("375", "数学运算异常,请稍后再试"),INVALID_YOKEN("2001","访问令牌不合法"),ACCESS_DENIED("2003","没有权限访问该资源"),CLIENT_AUTHENTICATION_FAILED("1001","客户端认证失败"),USERNAME_OR_PASSWORD_ERROE("1002","用户名或密码错误"),BUSINESS_ERROR("1004","业务逻辑异常"),UNSUPPORTED_GRANT_TYPE("1003","不支持的认证模式");private final String code;private final String message;ReturnCodeEnum(String code, String message) {this.code = code;this.message = message;}/*** 如何定义一个通用的枚举类* 举值-构造-遍历*///传统版//3.1public static ReturnCodeEnum getReturnCodeEnum(String code){for (ReturnCodeEnum element : ReturnCodeEnum.values()) {if(element.getCode().equalsIgnoreCase(code)){return element;}}return  null;}//3.2Stream流式计算public static ReturnCodeEnum getReturnEnum1(String code){return Arrays.stream(ReturnCodeEnum.values()).filter(x -> x.getCode().equalsIgnoreCase(code)).findFirst().orElse(null);}   }

2.新建统一定义返回对象ResultData

1.6全局异常处理

为什么需要全局异常处理器,不在手写try...catch

新建全局异常类GlobalExecptionHandler

package com.atguigu.cloud.exp;import com.atguigu.cloud.resp.ResultData;
import com.atguigu.cloud.resp.ReturnCodeEnum;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestControllerAdvice;@Slf4j
@RestControllerAdvice
public class GlobalExexptionHandler {@ExceptionHandler(RuntimeException.class)@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)public ResultData<String> execption(Exception e){System.out.println("####come in GlobalExecptionHandler");log.error("全局异常信息:{}",e.getMessage(),e);return ResultData.fail(ReturnCodeEnum.RC500.getCode(), e.getMessage());}                                                                                                                                                                                        
}
    @GetMapping(value =  "/pay/error")public ResultData<Integer> getPayError(){Integer i = Integer.valueOf(200);try{System.out.println("com in payerror test");int age = 10/0;}catch (Exception e){return ResultData.fail(ReturnCodeEnum.RC500.getCode(), e.getMessage());}return ResultData.success(i);}

http://www.dtcms.com/wzjs/522570.html

相关文章:

  • 中国建设银行网站江苏分行营销网站建设多少钱
  • 定制杯子网站优化推广是什么
  • 泉州外贸网站建设都有哪些公司新手怎么做电商运营
  • 如何登录建设部网站电脑版东莞网站制作推广公司
  • 手机微官网和pc端网站怎么做网络营销网站
  • 西安网站制作流程中国网站排名
  • o2o网站做推广公司小红书seo排名
  • 传奇背景图网站怎么做沈阳seo顾问
  • 网站服务器到期为什么要网站备案石家庄seo结算
  • 深圳哪家做网站比较好互联网域名注册查询
  • 现在流行什么做网站优秀的营销策划案例
  • 做网站的windowlcd互联网平台公司有哪些
  • 视频播放网站开发视频推广一条多少钱
  • 高端的深圳网站页面设计seo岗位
  • 深圳网站定制深圳网站建设公司网络营销的目的和意义
  • 滕州网站建设助企网络蚂蚁bt
  • WordPress明月浩空夫唯seo教程
  • 会计公司网站模板网页制作网站
  • 免费的ftp网站网络推广的渠道
  • 圆通快递归邮政局管吗上海网络公司seo
  • 微信小程序+网站开发武汉seo工厂
  • 做旅行义工网站蚁北京seo不到首页不扣费
  • 餐饮网站建设需求分析网页设计制作网站代码
  • 成都都江堰网站建设指数是指什么
  • 通州网站建设是什么怎么做外链
  • 北京网站制作案例企业营销策划案例
  • 西安网站移动排名提升软件
  • 网站开发商业机密免费优化网站
  • 柳北网站制作广西seo
  • 做it人经常逛的网站网站优化排名软件网站