写点什么

WSO2 MSF4J 增添对 Spring 和 Swagger 的支持

  • 2016-07-24
  • 本文字数:800 字

    阅读完需:约 3 分钟

WSO2 MSF4J 2.0 已增添了对 Spring、Swagger 定义生成、ExceptionMapper 以及 StreamingOutput 的支持。

WSO2 MSF4J 是一种通过 Java 构建微服务的开源框架。根据 WSO2 的介绍,该框架的内存痕迹可低至 25MB,启动时间不超过 400ms。该框架最近发布的 2.0 版包含诸多改进,例如:

  • 支持 Spring 注解和运行时。现在可通过 Spring bean 编写微服务、拦截器(Interceptor),以及异常映射器(Exception mapper)。
  • 可生成 Swagger 定义并支持 Swagger 注解。
  • 支持用 ExceptionMapper 将微服务的异常连接至 HTTP 响应。
  • 支持通过 StreamingOutput 让开发者控制如何将响应流回调用方。

WSO2 MSF4J 的一些主要功能包括:

  • 使用 Java 注解定义微服务 API
  • 支持 JAX-RS 和 JSR 250(注解)
  • 与其他 WSO2 开发、部署、监控和缩放工具集成
  • 与 WSO2 Data Analytics Server 集成
  • 与 WSO2 Identity Server 集成
  • 包含可出于多种目的(例如日志)捕获消息的 API 拦截器
  • 通过 WSO2 DevStudio 执行的开发可通过 Swagger API 定义生成微服务项目
  • 消息传输可通过 Netty 实现
  • 请求可通过唯一的消息 ID 进行追踪

若要使用 MSF4J 创建微服务,开发者需要通过注解 Java 类以定义 API 端点,并使用 Runner 进行部署。最基本的 HelloWorld 示例是这样的:

复制代码
@Path("/hello")
public class HelloService {
@GET
@Path("/{name}")
public String hello(@PathParam("name") String name) {
return "Hello " + name;
}
}

可这样部署:

复制代码
public class Application {
public static void main(String[] args) {
new MicroservicesRunner()
.deploy(new HelloService())
.start();
}
}

通过上述操作,下列 URL

curl http://localhost:8080/hello/world就可以生成“Hello World”的响应。

使用 WSO2 MSF4J 创建的微服务可使用 Maven 构建并部署到 Docker 容器中。

查看英文原文 WSO2 MSF4J Adds Support for Spring and Swagger

2016-07-24 19:001960
用户头像

发布了 283 篇内容, 共 110.4 次阅读, 收获喜欢 62 次。

关注

评论

发布
暂无评论
发现更多内容

开源免费!又一款代码文档生成工具!

Jackpop

利用Vim和Github Copilot打造一款强大IDE!

Jackpop

Python语法之函数

芯动大师

<T>和<?>区别

六月的雨在InfoQ

泛型 Java泛型 9月月更 <T> <?>

赞美,还是责备?全盘否定孩子的一切是“虐待”!

图灵社区

育儿 教育 脑科学

2021年中国知识图谱软件及服务市场规模超100亿,竞争格局不稳定

易观分析

知识图谱

Python 入门与基础《刷题篇》(1)

吉师职业混子

9月月更

天猫精灵DIY--技能应用

六月的雨在InfoQ

天猫精灵 功能模型 9月月更 公共实体 语音交互

看大神如何用Maya再现神剧《绝命毒师》主角/场景

Renderbus瑞云渲染农场

作业

兜里贼缺钱

Javaweb之会话技术

楠羽

技术 笔记 9月月更

bootstrap input框回车后重新刷新页面问题

六月的雨在InfoQ

bootstrap Input 9月月更 表单提交

Python语法之集合

芯动大师

集合 9月月更 Python语法

2021年中国机器学习平台软件及服务市场规模近100亿

易观分析

机器学习

Python 入门与基础《刷题篇》(2)

吉师职业混子

9月月更

【编程实践】手把手带你利用Python简单实现斐波那契数列

迷彩

斐波那契 9月月更 数列

PLG SaaS 案例:如何实践外链自动增长策略?

程序员泥瓦匠

SaaS

【云原生 | 从零开始学Kubernetes】十、k8sPod节点亲和性和反亲和性

泡泡

Docker 云计算 云原生 k8s 9月月更

python学习之21天(1)

吉师职业混子

9月月更

8万Star!这个开源项目有点强!

Jackpop

从零开始 - 50行代码实现一个Vuex状态管理器

茶无味的一天

JavaScript Vue vuex

Python语法之元组

芯动大师

Python 元组 9月月更

Spring 注解 @Resource 与 @Autowired 的区别

六月的雨在InfoQ

注解 依赖注入 @Autowired @Resource 9月月更

极客时间架构训练营模块一作业

李晨

架构

赞美,还是责备?全盘否定孩子的一切是“虐待”!

图灵教育

育儿 教育 脑科学

跟着卷卷龙一起学Camera--内存池浅析03

卷卷龙

ISP 9月月更

ESP32-C3 应用 篇(实例一、通过MQTT协议连接ONENET上报传感器数据,云平台下发灯光调色)

矜辰所致

mqtt ESP32-C3 9月月更 项目应用 OneNet

The Architecture of Wechat & SMS

David

架构实战营

云效DevOps--效能无极限

六月的雨在InfoQ

云效 Codeup 云效流水线 Flow 9月月更 Thoughts

9 月 Jina AI 中文社区面对面

Jina AI

人工智能 开源 工程师

从零开始 - 40行代码实现一个简单Promise函数

茶无味的一天

JavaScript Promise

WSO2 MSF4J增添对Spring和Swagger的支持_Java_Abel Avram_InfoQ精选文章