")] [Description("相电压数据,单位 0.1V")] public string In { get; set; } } 需要在winform上显示...string, string> keyValuePairs = new(); PropertyInfo[] properties = electricMeter.GetProperties();// 获取属性列表...for (int i = 0; i 属性,添加属性和值到字典 { keyValuePairs.TryAddOrUpdate
现在用Swagger来生成API文档的例子已经非常多了,今天碰到开发同事问了一个问题,帮着看了一下,主要还是配置方法的问题,所以记录一下。如果你也碰到了同样的问题,希望本文对您有用。...问题描述 @ApiModelProperty注解是用来给属性标注说明、默认值、是否可以为空等配置使用的,其中有一个属性allowableValues是本文要讲的重点,从属性命名上就能知道,该属性用来配置所标注字段允许的可选值...但是这个属性是一个String类型,我们要如何配置可选值呢?...函数定义范围等方式就能正确显示了,比如: public class Filter { @ApiModelProperty(allowableValues = "range[1,5]")...Integer order @ApiModelProperty(allowableValues = "111, 222") String code; } 再运行下程序,就能看到如下内容,设置的允许值正常显示了
图1 现在,要查找各颜色对应的数值,并将找到的值列出来,如下图2所示。...With Application.CutCopyMode = False End If Next x rng.AutoFilter Sheet3.Select End Sub 运行后的结果如下图...图4 很好的几段程序,有兴趣的朋友可以研究。 可以在完美Excel微信公众号发送消息: 分别查找所有值 获取示例工作簿的下载链接。 或者,直接到知识星球App完美Excel社群下载该示例工作簿。...注:本文示例整理自vbaexpress.com,供有兴趣的朋友参考。
在我使用 X# 来编写代码时,有这样一个经历,当我试图为某个类的某个属性赋值时(当然,我是通过搜索来获得需要如此操作),在对应的类实例所对应的属性窗口中,我想为之赋值的属性并没有显示出来。...在 VFP 中,有一个问题始终没有优雅的解决方案:对于类属性,有时,我们设计它时,需要将其“设置”为设计时只读,运行时可读/可写/可读写。...在VFP中,如果想实现这样的设计目的,通常情况下,是模仿想象的设计效果,使用仅在设计时执行的代码在设计时予以达成,或者,在属性说明里予以说明,并在使用时,自觉的遵循属性说明使用。...但是在X#中,已经可以和C#一样,优雅的予以解决。...虽然其中的 VFP 方言的类定义语法还不能实现这样的目的,但是,X# 的所谓“新”语法实现它应该不是问题,也许在下一个版本(Ver:3.0)的 X# 中,使用 VFP 方言的实现就会准备就绪 Follow
getDeclaredFields(); for (Field field : fields) { field.setAccessible(true);//类中的成员变量为
fastjson解析null值问题: 解决 null的属性不显示问题 null对应的key被过滤掉;这明显不是我们想要的结果,这时我们就需要用到fastjson的SerializerFeature序列化属性...: 也就是这个方法: JSONObject.toJSONString(Object object, SerializerFeature... features) SerializerFeature有用的一些枚举值...QuoteFieldNames———-输出key时是否使用双引号,默认为true WriteMapNullValue——–是否输出值为null的字段,默认为false WriteNullNumberAsZero...SerializerFeature.WriteMapNullValue), MAP_TYPE_REFERENCE) ) .collect(Collectors.toList()); } 其中, response 返回值的数据结构
阅读更多 //功能:显示出Jar文件中的所有目录名和文件名,同时也显示META-INF/Manifest.mf文件中的所有属性 //用法:提供Jar文件的路径信息 //例如:Java -cp ....; return; } Enumeration entries = jar.entries(); //打印JAR文件中的所有目录名和文件名...entries.nextElement(); System.out.println(o); } // 下面这段代码可以取得META-INF/MANIFEST.MF文件中的所有属性信息...set.iterator(); while(i.hasNext()) { Object o = i.next(); // 打印属性信息
获取 WPF 的依赖项属性的值时,会依照优先级去各个级别获取。这样,无论你什么时候去获取依赖项属性,都至少是有一个有效值的。有什么方法可以获取哪些属性被显式赋值过呢?...如果是 CLR 属性,我们可以自己写判断条件,然而依赖项属性没有自己写判断条件的地方。 本文介绍如何获取以及显式赋值过的依赖项属性。...---- 需要用到 DependencyObject.GetLocalValueEnumerator() 方法来获得一个可以遍历所有依赖项属性本地值。...} } 这里的 value 可能是 MarkupExtension 可能是 BindingExpression 还可能是其他一些可能延迟计算值的提供者。...因此,你不能在这里获取到常规方法获取到的依赖项属性的真实类型的值。 但是,此枚举拿到的所有依赖项属性的值都是此依赖对象已经赋值过的依赖项属性的本地值。如果没有赋值过,将不会在这里的遍历中出现。
WPF 备份某控件的一些属性,做一些神奇的操作,然后再还原这些属性。多么司空见惯的操作呀!然而怎么备份却是值得研究的问题。直接赋值?那一定是因为你没踩到一些坑。...是这样的优先级:强制 > 动画 > 本地值 > 模板 > 隐式样式 > 样式触发器 > 模板触发器 > 样式 > 默认样式 > 属性继承 > 元数据默认值。...而我们通过在 XAML 或 C# 代码中直接赋值,设置的是“本地值”。因此,如果设置了本地值,那么更低优先级的样式当然就全部失效了。 那么绑定呢?绑定在依赖项属性优先级中并不存在。...但是,SetCurrentValue 就是干这件事的! SetCurrentValue 设计为在不改变依赖项属性任何已有值的情况下,设置属性当前的值。...,就还原了此依赖项属性的一切设置的值: 1 _window.InvalidateProperty(Window.WindowStyleProperty); 注意不是 ClearValue,那会清除本地值
/index.html配置Doucument 类型Swagger 2:DocumentationType.SWAGGER_2Swagger 3:DocumentationType.OAS_30示例...body, header, formexample 非请求体(body)参数的单个请求示例 examples 参数示例,仅适用于...dataType 参数的数据类型,可以是类名或原始数据类型,此值将覆盖从类属性读取的数据类型...required 是否为必传参数,false:非必传参数; true:必传参数 position 允许在模型中显示排序属性...hidden 隐藏模型属性,false:不隐藏; true:隐藏 example 属性的示例值
所有这些属性都应使用以下前缀声明:springdoc.swagger-ui 参数名称 默认值 描述 springdoc.swagger-ui.path /swagger-ui.html String...(用户始终可以通过单击“模型”和“示例值”链接来切换给定模型的渲染。...springdoc.swagger-ui.maxDisplayTags Number.如果设置,将显示的标记操作数限制为最多此数量。默认值为显示所有操作。...springdoc.swagger-ui.showExtensions false Boolean.控制供应商扩展 () 字段和操作、参数和架构的值的显示。...空数组禁用所有操作的“试用”。这不会从显示中过滤操作。 springdoc.swagger-ui.queryConfigEnabled false Boolean.自 以来禁用。
Swagger Core(开源):用于生成Swagger API规范的示例和服务器集成,可轻松访问REST API,结合Swagger UI,让生成的文档更漂亮。...为了不显示某个包下面API或某个URL路径下API, Docket提供了 apis() 和 paths() 两 个方法来帮助我们在不同级别上过滤接口(上面示例我们默认对这两个设置是不做任何过滤,扫描所有...4.3.2 API精细配置 虽然上面我们已经可以控制API的显示和分组了,但是对于API一些更详细,对组内API再次归类之类的,比如小组的描述信息,以及每个API如何去控制它的参数说明,返回值说明等。...同样用于在JavaBean类的属性上面,说明相关属性。...设置参数有: name:属性名称,需与JavaBean内保持一致 value:属性值 notes:说明 dataType:数据类型 required:是否必须 readOnly:是否只读,默认为false
2.2 SwaggerConfiguration 因为 Spring Boot 暂未提供 Swagger 内置的支持,所以我们需要自己定义配置类。...2.5 注解 在 swagger-annotations 库中,在 io.swagger.annotations 包路径下,提供了我们会使用到的所有 Swagger 注解。...authorizations 属性:授权相关的配置,[] 数组,使用 @Authorization 注解。 hidden 属性:是否隐藏,不再 API 接口文档中显示。...绝大多数情况下,使用 "query" 值这个类型即可。 example 属性:参数值的简单示例。 examples 属性:参数值的复杂示例,使用 @Example 注解。...@ApiImplicitParam 注解的不常用属性,如下: defaultValue 属性:默认值。 allowableValues 属性:允许的值。
继上篇Swashbuckle.AspNetCore3.0 的二次封装与使用分享了二次封装的代码,本篇将分享如何给文档添加一个登录页,控制文档的访问权限(文末附完整 Demo) 关于生产环境接口文档的显示...那么,怎么安全的发布 swagger 呢?...实现思路 前面已经说到,需要一个拦截器,而这个拦截器还需要是全局的,在 asp.net core 中,自然就需要用到的是中间件了 步骤如下,在 UseSwagger 之前使用自定义的中间件 拦截所有...swagger 相关请求,判断是否授权登录 若未登录则跳转到授权登录页,登录后即可访问 swagger 的资源 如果项目本身有登录系统,可在自定义中间件中使用项目中的登录, 没有的话,我会分享一个简单的用户密码登录的方案...login.html,其属性均为内嵌资源,故事用 GetManifestResourceStream 读取文件流并输出,这样可以方便的将其进行封装到独立的类库中,而不与输出项目耦合 关于退出按钮,可以参考前文自定义
title: 标题 description: API 描述 version:版本号 license:许可证信息 contact:联系人信息 terms of service:服务条款 以下是 info 对象和属性的示例...name: appid in: query security 对象的属性内容: type:授权协议,枚举值有:apiKey、http、oauth2、openIdConnect description...:安全方法的描述,尽可能的详细,包含使用示例 name:安全密钥 apiKey 在 HTTP Header 请求中的名字 in:安全密钥 apiKey 在 HTTP 传输中的位置,枚举值有:query,...header,cookie ………… 在添加以上的描述信息后,Swagger UI 会显示安全任何的相关标识,如下: 点击 Authorize 会显示更多的安全信息: 当你在 Value 输入你的访问秘钥时...,Swagger 会在访问 API 的时候,根据你的设定访问你的 API,如下: tags 对象 该对象主要是对 OpenAPI 中的多个访问路径进行分组,从而更方面的查看 API 信息,使用示例如下
VO(Value Object,值对象): 值对象是指那些没有唯一标识符,且仅根据它们的属性值来进行比较的对象。在Java开发中,VO通常用于封装一组相关属性,用于传递数据或表示某个特定领域的值。...出现这个错误的原因可能是以下几种情况: 缺少'introduce_id'字段的值:在插入数据时,未为'introduce_id'字段提供值,或者提供了一个空值(null),导致数据库无法生成该字段的值。...例如,将其设置为自增字段,或者设置一个默认值,这样在插入数据时如果未提供具体值,数据库将使用默认值。...下面是一个示例代码,展示如何根据MultipartFile来设置Swagger: Swagger: import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation...以上的示例会在Swagger UI中显示一个上传文件的接口,并且会包含关于文件参数的说明。 仓库地址:https://github.com/webVueBlog/JavaGuideInterview
它不再用于声明资源,而现在用于为在它下定义的所有操作应用定义。...Swagger 将获取@Produces注释,但如果您愿意,您可以覆盖此值。 @Api也可用于在资源级别声明授权。这些定义适用于该资源下的所有操作,但如果需要,可以在操作级别覆盖。...Swagger 将选取value()这些注解并将它们用作参数名称,并且基于注解它还将设置参数类型。 如果存在,Swagger 还将使用 的值@DefaultValue作为默认值属性。...允许控制 Swagger 特定的@ApiModelProperty定义,例如允许的值和附加注释。如果您想在某些情况下隐藏该属性,它还提供了额外的过滤属性。...它将包含的扩展属性包装在 JSON 对象中。 @ExtensionProperty 扩展中的单个属性 - 有关示例,请参见前面的@Extension部分。
答案是肯定的,那就是将要登场的“Swagger”和“Easy Mock”。 1.1 Swagger介绍 Swagger是全球最流行的接口文档自动生成和测试的框架,几乎支持所有的开发语言。...Easy Mock能一键导入Swagger所有接口,省去了手动录制接口的麻烦,而且能够完美的适配Swagger中的代码注释,可谓开发利器。...3.1 @Api 类注释 @Api:用来描述类的,属性如下: tags 描述类的用途 value 对显示而言没有任何用途可以不用设置 代码示例: @Api(tags = "文章接口") 3.2 @...ApiOperation 方法注释 @ApiOperation:用来描述方法的,属性如下: value 方法的描述 notes 方法备注说明 代码示例: @ApiOperation(value = "...3.4 @ApiModel 实体对象描述 @ApiModel:实体类名描述,属性如下: description 类描述 @ApiModelProperty:字段描述,属性如下: value 字段描述 示例如下
用在类名上; @ApiModelProperty 作用在属性上,添加属性描述; @ApiOperation 作用在接口类的方法上,控制方法的相关描述; @ApiImplicitParam 作用在接口方法上...@ApiImplicitParam一样,但可以作用在方法、参数、属性上; 下面分别对每个注解的常用参数作讲解。...:字符串数组,标签组,同样可以描述方法的作用; response:ClassType,显示指出返回的对象类型;在响应示例中会显示出改对象的字段以及示例、描述; code:响应代码,默认200,一般不改;...name:字符串,参数名; value:字符串,参数描述; defaultValue:字符串,参数默认值; required:boolean,标识是否必须传值,默认false; dataType:字符串...required:boolean,是否必须,默认false; example:字符串,参数值示例; 4.替换swagger-ui,选择款神器—knife4j 首先我们来看下界面功能的对比,swagger-ui
ID", required = true, example = "1000") 描述属性信息,执行描述,是否必须,给出示例 @Api @Api(value = "用户操作 API(v1)", tags...springfox-swagger-ui 可以把生成的 OpenAPI 接口文档显示为页面。Lombok 的引入可以通过注解为实体类生成 get/set 方法。...代码编写 文章不会把所有代码一一列出来,这没有太大意义,所以只贴出主要代码,完整代码会上传到 Github,并在文章底部附上 Github 链接。...访问路径是 /swagger-ui.html,访问看到的效果可以看下图。 ? swagger 访问 也可以看到用户查询的两个方法会归到了一起,原因就是这两个方法的注解上使用相同的 tag 属性。...,@ApiModelProperty 注解是否设置了 example 值,如果没有,那就需要设置一下,像下面这样。