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

在阿里巴巴上做网站需要什么条件一流的菏泽网站建设

在阿里巴巴上做网站需要什么条件,一流的菏泽网站建设,asp 做购物网站,网站编辑的栏目怎么做背景 我们有一个接口要支持后端排序#xff0c;所以需要在请求对象里面增加两个参数#xff1a;排序字段名、排序方式#xff08;asc、desc#xff09;。 正好基础jar包中有一个类可以直接拿来用。 Data public class OrderByItem {private String column;private Strin…背景 我们有一个接口要支持后端排序所以需要在请求对象里面增加两个参数排序字段名、排序方式asc、desc。 正好基础jar包中有一个类可以直接拿来用。 Data public class OrderByItem {private String column;private String direction; }但是考虑到前端使用的是element框架默认使用prop来定义排序字段使用order来定义排序方式。 因此考虑使用这两个属性来接受排序字段。但是仍然用OrderByItem这个类来接收参数。 为啥不重新定义一个类呢 因为OrderByItem这个类还有配套的工具类用来进行相关的转换。所以为了复用这个工具类就有了这个奇葩需求——我要用OrderByItem这个类型来接受参数但是这两个参数在Swagger中要展示成另外的名字前端也需要用另外的名字来传参。 老实说直接用column和direction没啥大问题。因此我们不去讨论这样做是否合理姑且看如果我想实现类似的效果应该怎么处理。 JSON格式 如果OrderByItem作为JSON格式使用那么就很简单了 Data public class OrderByItem {JsonProperty(prop)private String column;JsonProperty(order)private String direction; }这里直接使用JsonProperty注解即可。 非JSON格式 如果不是JSON格式事情会变得麻烦一点。 首先是要解决参数接收的问题这里可以定义一个HandlerMethodArgumentResolver。 public static class OrderItemHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver {private static final String ORDER order;private static final String ORDER_DESC descending;private static final String ORDER_ASC ascending;private static final String PROP prop;Overridepublic boolean supportsParameter(MethodParameter parameter) {return OrderByItem.class.isAssignableFrom(parameter.getParameterType());}Overridepublic Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {String prop webRequest.getParameter(PROP);if (StringUtils.isBlank(prop)) {return null;}String order webRequest.getParameter(ORDER);// validate orderOrderByItem orderByItem new OrderByItem();orderByItem.setColumn(prop);orderByItem.setDirection(order);return orderByItem;}}注册OrderItemHandlerMethodArgumentResolver Configuration public class WebMvcConfig implements WebMvcConfigurer {Overridepublic void addFormatters(FormatterRegistry registry) {registry.addConverter(new OrderItemHandlerMethodArgumentResolver());} }这里虽然解决了参数接收的问题但是Swagger生成的文档参数名还是column和direction。我们需要改成prop和order。 由于OrderByItem是jar包中的类无法修改源码所以不能直接使用ApiModelProperty这个注解。 好在Swagger提供了一个“替身”功能我们需要先定义一个替身类 Data ApiModel(排序) public static class OrderRequest {ApiModelProperty(字段名称)private String prop;ApiModelProperty(排序方式descending倒序ascending正序)private String order; }然后使用替身 Configuration public class SwaggerConfig {private ApiInfo apiInfo() {return new ApiInfoBuilder().title(test).description(test).version(1.0).build();}Beanpublic Docket api() {return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.any()).paths(PathSelectors.any()).build().directModelSubstitute(OrderByItem.class, OrderRequest.class);} }这样做当Swagger显示OrderByItem类时就会用OrderByItem代替。
http://wiki.neutronadmin.com/news/349042/

相关文章:

  • 庆阳网站建设公司商标logo一键生成器
  • 领券购买网站是怎么做的门户网站开发需求
  • 网站建设经费申请报告wordpress外观
  • 重庆品牌网站建设公司排名网站建设拟采用的技术路线
  • 图片外链上传网站两个人看的视频在线观看
  • 宁波网站推广营销公司做引流去那些网站好
  • 网站推广的重要性资源搜索神器
  • 个人网站建站指南代理充值平台网站
  • 邹城建设银行网站网站建设与管理好处
  • 怎么做网站优化排名到前面百度问答app下载
  • 网站增加栏目费用太原市外贸网站建设
  • 一千元做网站最稳定的免费的资源共享网站
  • 杭州网络公司做网站报价网站查外链
  • 在百度上怎么建网站手机支持wordpress
  • 做小说网站做国外域名还是国内的好处宁波自己建网站
  • 网站评论管理怎么做建行企业网站
  • 免费 网站 如何做工厂怎么推广自己的产品
  • wap网站如何建设网页创建基本步骤
  • 北京市门户网站跨境电商官网
  • 如何清空网站空间八宿县网站seo优化排名
  • 做的网站老被攻击怎么在网站上做404页面
  • 网站建设上机实验心得南乐网站开发
  • 就业专项资金网站建设网站开发进度
  • 做网站 思源字体网站制作公司 云南
  • 镇江网站搜索排名百度地图推广电话
  • 做内部网站cms国外产品设计网
  • 可以做外包的网站iis 建立默认网站
  • 大学生网站建设开题报告茂南手机网站建设公司
  • 傻瓜网站开发软件如何做网站报价
  • 登封哪里有做网站的注册网站后怎么建设