天天看点

java 开源工具_JAVA常用开源工具与项目

【XXL开源社区】已经发布一系列开源软件产品,涉及分布式、基础中间件、效率工具等多个领域。包含项目有:任务调度、配置中心、通讯框架(+注册中心)、消息队列、SSO、API管理、爬虫……等等。

1.分布式任务调度平台: XXl-JOB

1.1 架构设计

1.1.1 设计思想

将调度行为抽象形成“调度中心”公共平台,而平台自身并不承担业务逻辑,“调度中心”负责发起调度请求。

将任务抽象成分散的JobHandler,交由“执行器”统一管理,“执行器”负责接收调度请求并执行对应的JobHandler中业务逻辑。

因此,“调度”和“任务”两部分可以相互解耦,提高系统整体稳定性和扩展性;

1.1.2 系统组成

调度模块(调度中心):

负责管理调度信息,按照调度配置发出调度请求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系统性能不再受限于任务模块;

支持可视化、简单且动态的管理调度信息,包括任务新建,更新,删除,GLUE开发和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志,支持执行器Failover。

执行模块(执行器):

负责接收调度请求并执行任务逻辑。任务模块专注于任务的执行等操作,开发和维护更加简单和高效;

接收“调度中心”的执行请求、终止请求和日志请求等。

1.1.3 架构图

java 开源工具_JAVA常用开源工具与项目

2.接口文档——Swagger

首先按照它的规范去定义接口及接口相关的信息。再通过Swagger衍生出来的一系列项目和工具,就可以做到生成各种格式的接口文档,生成多种语言的客户端和服务端的代码,以及在线接口调试页面等等。支持从设计和文档到测试和部署的整个API生命周期的开发。

名称描述属性

将一个类标记为Swagger资源。

tags–表示说明

value–也是说明,可以使用tags替代

但是tags如果有多个值,会生成多个list

包装器,允许多个ApiImplicitParam对象的列表。

name–参数名

value–参数说明

dataType–数据类型

paramType–参数类型

example–举例说明

提供有关Swagger模型的其他信息。

value–表示对象名

description–描述

添加和操作模型属性的数据。

value–字段说明

name–重写属性名字

dataType–重写属性类型

required–是否必填

example–举例说明

hidden–隐藏

描述针对特定路径的操作或通常的HTTP方法。

value用于方法描述

notes用于提示内容

tags可以重新分组(视情况而用)

为操作参数添加其他元数据。

name–参数名

value–参数说明

required–是否必填

包装器,允许包含多个ApiResponse对象的列表。

声明要在资源或操作上使用的授权方案。

3.JAVA常用插件

4.JAVA中Idea 使用

4.1 JAVA中成员变量之间的颜色设置

java 开源工具_JAVA常用开源工具与项目