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

网站建设公司介绍深圳网络推广

网站建设公司介绍,深圳网络推广,如何设计制作一般的企业网站,怎么做淘宝联盟网站专栏:高并发---前后端分布式项目 👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者 📕系列专栏:前端、Java、Java中间件大全、微信小程序、…

 

 

  

专栏:高并发---前后端分布式项目 

👏作者简介:大家好,我是小童,Java开发工程师,CSDN博客博主,Java领域新星创作者
📕系列专栏:前端、Java、Java中间件大全、微信小程序、微信支付、若依框架、Spring全家桶
📧如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀
🔥如果感觉博主的文章还不错的话,请👍三连支持👍一下博主哦
🍂博主正在努力完成2023计划中:以梦为马,扬帆起航,2023追梦人 

 IDEA开启Dashboard

普通的IDEA面板只能管理一个服务,而分布式项目中,服务非常多,开启Dashboard可以更方便的管理服务。

在项目路径中的 .idea/workspace.xml 中添加

<component name="RunDashboard"><option name="ruleStates"><list><RuleState><option name="name" value="ConfigurationTypeDashboardGroupingRule" /></RuleState><RuleState><option name="name" value="StatusDashboardGroupingRule" /></RuleState></list></option><option name="configurationTypes"><set><option value="SpringBootApplicationConfigurationType" /></set></option>
</component>

效果如下: 

 

设置统一返回格式 

在前后端分离的项目中,为了方便前后端交互,后端往往需要给前端返回固定的数据格式,但不同的实体类返回格式不同,所以在真实开发中,我们将所有API接口设置返回统一的格式。

 

1、在通用模块创建统一返回结果实体类 

/**
* 统一结果集返回结果
*/
@Data
@AllArgsConstructor
public class BaseResult<T> {// 状态码(成功:200 失败:其他)private Integer code;// 提示消息private String message;// 返回数据private T data;// 构建成功结果public static <T> BaseResult<T> ok() {return new BaseResult(CodeEnum.SUCCESS.getCode(),CodeEnum.SUCCESS.getMessage(), null);}// 构建带有数据的成功结果public static <T> BaseResult<T> ok(T data) {return new BaseResult(CodeEnum.SUCCESS.getCode(),CodeEnum.SUCCESS.getMessage(), data);}
}
/**
* 返回状态码枚举类
*/
@Getter
@AllArgsConstructor
public enum CodeEnum {// 正常SUCCESS(200, "OK");private final Integer code;private final String message;
}

2、修改API模块的控制器方法,所有方法都返回 BaseResult 对象

/**
* 品牌
*/
@RestController
@RequestMapping("/brand")
public class BrandController {// 远程注入@Referenceprivate BrandService brandService;/*** 根据id查询品牌** @param id 品牌id* @return 查询结果*/@GetMapping("/findById")public BaseResult<Brand> findById(Long id) {Brand brand = brandService.findById(id);return BaseResult.ok(brand);}
}

 

 统一异常处理

在前后端分离项目中,系统抛出异常时,不论是自定义异常还是程序异常,都要返回给前端一段JSON数据,以便其对用户进行提示, 且JSON数据的格式和正常结果相同。

 

接下来我们在 通用模块 为整个项目做统一异常处理: 

1、创建自定义异常类 

/**
* 自定义业务异常
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BusException extends
RuntimeException implements Serializable {// 状态码(成功:200,失败:其他)private Integer code;// 异常信息private String message;public BusException(CodeEnum codeEnum){this.code = codeEnum.getCode();this.message = codeEnum.getMessage();}
}

2、创建统一异常处理器

// 统一异常处理器
@RestControllerAdvice
public class GlobalExceptionHandler {// 处理业务异常@ExceptionHandler(BusException.class)public BaseResult defaultExceptionHandler(HttpServletRequest req, HttpServletResponse resp,BusException e) {BaseResult baseResult = new BaseResult(e.getCode(),e.getMessage(),null);return baseResult;}// 处理系统异常@ExceptionHandler(Exception.class)public BaseResult defaultExceptionHandler(HttpServletRequest req, HttpServletResponse resp, Exception e) {e.printStackTrace();BaseResult baseResult = new BaseResult(CodeEnum.SYSTEM_ERROR.getCode(),CodeEnum.SYSTEM_ERROR.getMessage(),null);return baseResult;}
}

3 让所有项目都可以加载全局异常处理类,在通用模块创建文件

resources > META-INF > spring.factories ,添加如下内容:

# 启动时自动扫描全局异常处理类
org.springframework.boot.autoconfigure.Ena
bleAutoConfiguration=com.itbaizhan.shoppin
g_common.exception.GlobalExceptionHandler

 4、修改返回状态码枚举类

/**
* 返回状态码枚举类
*/
@Getter
@AllArgsConstructor
public enum CodeEnum {// 正常SUCCESS(200, "OK"),// 系统异常SYSTEM_ERROR(500, "系统异常"),// 业务异常PARAMETER_ERROR(601, "参数异常");private final Integer code;private final String message;
}

5、修改品牌服务代码

@Service
public class BrandServiceImpl implements BrandService {@Autowiredprivate BrandMapper brandMapper;/*** 根据id查询品牌*/public Brand findById(Long id){if (id == 0){int i = 1/0; // 模拟系统异常}else if (id == -1){throw new BusException(CodeEnum.PARAMETER_ERROR); // 模拟业务异常}return brandMapper.selectById(id);}
}

6、分别访问

   http://localhost:8001/brand/findById?id=1,http://l ocalhost:8001/brand/findById?id=0,http://localhost:8001/b rand/findById?id=-1

查看返回结果

Postman测试接口 

1、双击安装包安装Postman

2、创建请求集合

3、添加请求

4、保存请求到集合,以后可以随时发送该请求 

 

 

http://www.mmbaike.com/news/89899.html

相关文章:

  • python网站开发快吗网页广告
  • 做网站搞什么流量千网推软文推广平台
  • b2b外贸网站建设进入百度一下官网
  • 网站建设与研发哈尔滨seo关键字优化
  • wordpress实现网站的登陆功能重庆seo主管
  • 陇西学做网站安卓优化大师官方下载
  • 快速网站建设价格网站优化seo怎么做
  • 网站运营管理办法重庆seo薪酬水平
  • 自己做的网站算广告吗论坛软文案例
  • 企业企业网站建设正规的教育培训机构有哪些
  • 建设网站的公司有哪些知乎google搜索优化方法
  • html5网站动效怎么做外贸获客软件
  • 网站维护的意义首页
  • 如何规划设计一个网站新闻株洲最新
  • 怎样做原创短视频网站百度开户资质
  • 莱芜钓鱼网站做一个公司网站要多少钱
  • 帮别人做网站涉嫌诈骗大概需要多少钱
  • 做购物网站 推广搜索引擎推广排名
  • 校园推广活动策划方案国内seo公司
  • 做企业网站需要维护费吗google推广公司哪家好
  • 谁可以做综合性网站解析域名网站
  • 网站分类有哪几类东莞网站制作推广公司
  • 网站制作与网站建设pdf网络营销师证书
  • 做的视频传到哪个网站好站长工具收录查询
  • 17网站一起做网店揭阳大连网络营销seo
  • wordpress变域名工具seo软文推广
  • 苹果树下网站谁设计的seo扣费系统源码
  • 建网站 可以看到访客吗百度网站免费优化软件下载
  • 什么样 个人网站 备案站长工具域名查询社区
  • 网站设计公司哪家便宜优化大师兑换码