类 HisProperties

java.lang.Object
com.midi.his.sdk.config.HisProperties

public final class HisProperties extends Object
把 properties 装载成 HisConfig.Builder,地址与密钥全部来自外部注入。

配置键(完整清单见 src/main/resources/his-sdk-example.properties):

his.* 配置项
键必填默认值说明
his.protocol否soapsoap 或 xml
his.endpoint.query是-查询服务地址,逗号分隔即故障切换列表;自动去掉 ?wsdl
his.endpoint.push是-推送服务地址
his.username是-平台分配用户名
his.password是-建议写成 ${HIS_PASSWORD} 由环境变量注入
his.sys-flag否11 生产 / 2 测试
his.source-sys-code是-本系统编号
his.target-sys-code.query是-查询接收方编号
his.target-sys-code.push否同 source推送接收方编号
his.hosp-code是-院区标识,多院区形如 A|B
his.data-channel否DC10001查询 inputDataChannel
his.timeout.connect否5s时长,支持 ms/s/m
his.timeout.read否30s时长
his.timeout.call否不限制含重试的总时长上限
his.retry.max-attempts否3总尝试次数
his.retry.backoff否500ms首次退避
his.retry.jitter否100ms随机抖动上限
his.page.data-amount否500单页行数
his.page.trigger-data否0分页阈值,0 不分页
his.soap-action否""SOAPAction 头
his.return-flag否-1推送回写标识
his.fid.override.STAFF否枚举默认值覆盖服务编号,键为服务枚举名
his.order-no.STAFF否枚举内置值覆盖服务固定 OrderNo,键为服务枚举名
his.log-payload否falseDEBUG 输出完整报文

占位符:值形如 ${NAME} 或 ${NAME:默认值} 时,按 系统属性 → 环境变量 → 内联默认值 的顺序解析;三者都取不到则抛 HisConfigException,不会把未解析的字面值发到线上。

  • 字段详细资料

    • DEFAULT_RESOURCE

      public static final String DEFAULT_RESOURCE
      默认资源名。
      另请参阅:
    • CONFIG_FILE_ENV

      public static final String CONFIG_FILE_ENV
      指向外部配置文件的环境变量名。
      另请参阅:
  • 方法详细资料

    • load

      public static HisConfig load()
      按默认顺序装载:系统属性覆盖 → HIS_SDK_CONFIG 指向的文件 → classpath 的 "his-sdk.properties"。
      返回:
      校验通过的配置
      抛出:
      HisConfigException - 找不到任何来源,或必填项缺失
    • load

      public static HisConfig load(String resourceOrFile)
      从指定来源装载,参数可以是 classpath 资源名,也可以是磁盘文件路径。
      参数:
      resourceOrFile - 资源名或文件路径
      返回:
      校验通过的配置
      抛出:
      HisConfigException - 来源不存在或配置非法
    • from

      public static HisConfig.Builder from(Properties properties)
      从已读取好的 Properties 构造构建器,便于调用方再用代码覆盖个别项。
      参数:
      properties - 原始配置,键以 his. 开头
      返回:
      预填完毕的构建器
      抛出:
      HisConfigException - 配置非法
    • configure

      public static HisConfig.Builder configure(HisConfig.Builder builder, Properties properties)
      把配置叠加到已有构建器上,后写入的值生效。

      服务地址(his.endpoint.query / his.endpoint.push)只在 properties 里出现时 才覆盖构建器原值,缺失时保留代码里已设置的地址,避免 build() 报出误导性的缺少服务地址。

      参数:
      builder - 目标构建器
      properties - 原始配置
      返回:
      同一个构建器,便于链式调用
      抛出:
      HisConfigException - 配置非法
    • read

      public static Properties read(String resourceOrFile)
      读取来源:优先按文件路径,其次按 classpath 资源。
      参数:
      resourceOrFile - 路径或资源名
      返回:
      装载后的 Properties
      抛出:
      HisConfigException - 读取失败
    • loadFile

      public static Properties loadFile(Path path)
      读取磁盘上的 UTF-8 properties 文件。
      参数:
      path - 文件路径
      返回:
      装载后的 Properties
      抛出:
      HisConfigException - 文件不可读