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

网站建设对旅游意义提高网页加载速度的方式

网站建设对旅游意义,提高网页加载速度的方式,品牌设计公司名称,上海建设工程造价信息网站jax-rs配置当使用JAX-RS创建REST服务时#xff0c;通常不返回任何内容#xff08;例如HTTP 201/2/4等#xff09;或某些数据#xff08;可能采用JSON格式#xff08;因此HTTP 200#xff09;#xff0c;或者返回某些异常/错误#xff08;因此HTTP 4xx或5xx#xff09;… jax-rs配置 当使用JAX-RS创建REST服务时通常不返回任何内容例如HTTP 201/2/4等或某些数据可能采用JSON格式因此HTTP 200或者返回某些异常/错误因此HTTP 4xx或5xx 。 我们通常将运行时异常转换为某些HTTP 5xx将已检查异常转换为某些4xx。 因为我们要保持边界整洁所以当我们将Exception转换为HTTP响应时我们不会在响应的主体中包含完整的Java stacktrace。 我们通常只在HTTP 5xx有时是4xx响应中添加“ REASON”标头。 但是这意味着我们的大多数ExceptionMappers看起来都差不多类似这样 Providerpublic class SomeExceptionMapper implements ExceptionMapperSomeException {Overridepublic Response toResponse(SomeException exception) {return Response.status(500).header(reason, exception.getMessage()).build();}}使用MicroProfile Config API 我们可以使用MicroProfile Config API创建可配置的异常映射器从而使使用者可以将异常配置为HTTP响应代码映射。 我们的Provider将处理所有运行时异常 Providerpublic class RuntimeExceptionMapper implements ExceptionMapperRuntimeException {// ...} 我们同时Inject配置和提供者 Injectprivate Config config;Context private Providers providers; 当我们实现toResponse方法时我们会在配置中查看此Exception类的映射 OverrideProduces({MediaType.APPLICATION_JSON,MediaType.APPLICATION_XML})public Response toResponse(RuntimeException exception) {return handleThrowable(exception);}private Response handleThrowable(Throwable exception) {if(exception instanceof WebApplicationException) {return ((WebApplicationException) exception).getResponse();}if(exception!null){String configkey exception.getClass().getName() STATUS_CODE_KEY;OptionalInteger possibleDynamicMapperValue config.getOptionalValue(configkey,Integer.class);if(possibleDynamicMapperValue.isPresent()){int status possibleDynamicMapperValue.get();// You switched it offif(status0)return handleNotMapped(exception);String reason getReason(exception);log.log(Level.FINEST, reason, exception);return Response.status(status).header(REASON, reason).build();} else if(exception.getCause()!null exception.getCause()!null providers!null){final Throwable cause exception.getCause();return handleThrowable(cause);} else {return handleNotMapped(exception);}}return handleNullException();} 这里有完整的示例 我们还将向上处理异常链直到获得映射或者默认为正常的500错误。 因此我们可以为映射添加配置如下所示 ## 503 Service Unavailable: The server is currently unavailable (because it is overloaded or down for maintenance). Generally, this is a temporary state.org.eclipse.microprofile.faulttolerance.exceptions.CircuitBreakerOpenException/mp-jaxrs-ext/statuscode503## 401 Unauthorized (RFC 7235): Similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet been provided.javax.ws.rs.NotAuthorizedException/mp-jaxrs-ext/statuscode401 在上面的示例中我们将CircuitBreakerOpenException来自MicroProfile容错API映射到503将NotAuthorizedException映射到401。 屏幕截图示例 用作库。 您还可以将所有这些捆绑在一个jar文件中以供您的任何项目使用。 我在maven Central和github中提供了上述内容因此您也可以直接使用它。 只需将其添加到您的pom.xml dependencygroupIdcom.github.phillip-kruger.microprofile-extensions/groupIdartifactIdjaxrs-ext/artifactIdversion1.0.9/version/dependency 它带有一些预定义的映射但是您可以在配置中覆盖它。 翻译自: https://www.javacodegeeks.com/2018/08/jax-rs-exceptionmapper-config.htmljax-rs配置
http://www.yutouwan.com/news/101015/

相关文章:

  • 网站开发怎么用自己的电脑手机自助建站系统
  • 网路营销网站策划书电子商务网站开发目的和意义
  • 专业建站北京seo公司排名
  • 学校登陆网站制作做公司的网站有哪些东西
  • 新乡网站优化手机版crm免费的
  • 做淘宝客网站必须备案吗蒙古文网站建设汇报材料
  • 建个人网站奉节集团网站建设
  • 大型网站建设建设公司排名开公司做网站
  • 快速免费建网站刚成立公司如何做网站
  • 产品展示网站 源码扬中网站建设如何
  • 女生做网站编辑好不好网络营销的方法有哪些?
  • wordpress 直接连接seo优化服务商
  • 免费建站网站一级123456海南省建设银行官方网站招聘
  • gta5线下办公室网站正在建设wordpress登录后评论
  • 移动应用开发公司网站模板徐州市建设工程质监站网站
  • 网站建设的7种流程广州十大电商公司
  • 网站建设与网页设计课石家庄网站建设费用
  • 建筑网站、小程序微信如何开发
  • 网站交互主要做什么dede网站文档不能更新
  • 哪里有卖自己做的网站上海洛可可设计公司
  • 淄博网站建设招聘十大搜索引擎入口
  • 沈阳网站开发工程师招聘网h5响应式网站设计方案
  • 上海龙雨建设工程有限公司网站建设人才网证书查询
  • 模版网站是什么意思福建建筑信息平台
  • 阿里云服务器搭建个人网站深圳专业网站制作多少钱
  • 如皋建设工程局网站网站建设中的注册和登录页面
  • 如何把做的网站放到百度上网站建设开发 脚本语言
  • 沈阳高端网站开发一套软件大概要多少钱
  • 暴走漫画网站建设目的找项目去哪个网站
  • 自助 建站安康信息平台