红联Linux门户
Linux帮助

Javalin 1.0.0发布,Kotlin/Java轻量级Web框架

发布时间:2017-11-11 09:13:32来源:红联作者:baihuo
Javalin 已发布 1.0.0 稳定版,该版本相比于之前的 0.5.X 并未有重大变化,可直接兼容升级。

Javalin 是用 Kotlin 和 Java 编写的一个非常轻量级的 Web 框架,受 Sparkjava 和 koa.js 的启发。

Javalin 基于 Kotlin 编写,其中一些功能接口采用 Java 开发,对 Kotlin 和 Java 的开发人员能提供几乎相同的愉悦体验。

Javalin 主要有以下特性:

易用:不用提前学习任何概念就可以开始使用

一致的API:所有的处理程序和映射器在Context (ctx)中都是无效的。

Kotlin和Java拥有几乎完全相同的API

是框架也是库:无需扩展任何功能

拥有完全可定制的嵌入式服务器(Jetty)

JSON对象映射

通过AccessManager 接口简单的按端点验证

简单的静态文件处理

生命周期事件

CookieStore,一种简单的用来序列化的方法和存储在cookie中的对象。

模板渲染

Markdown渲染

示例:[code]Hello World

kotlin

fun main(args: Array) {
val app = Javalin.start(7000)
app.get("/") { ctx -> ctx.result("Hello World") }
}

Java

public static void main(String[] args) {
Javalin app = Javalin.start(7000);
app.get("/", ctx -> ctx.result("Hello World"));
}

API structure and server config

kotlin

val app = Javalin.create().apply {
enableStaticFiles("/public")
enableStandardRequestLogging()
port(port)
}.start()

app.routes {
path("users") {
get(UserController::getAllUserIds)
post(UserController::createUser)
path(":user-id") {
get(UserController::getUser)
patch(UserController::updateUser)
delete(UserController::deleteUser)
}
}
}

Java

Javalin app = Javalin.create()
.enableStaticFiles("/public")
.enableStandardRequestLogging()
.port(port)
.start();

app.routes(() -> {
path("users"(() -> {
get(UserController::getAllUserIds);
post(UserController::createUser);
path(":user-id"(() -> {
get(UserController::getUser);
patch(UserController::updateUser);
delete(UserController::deleteUser);
});
});
});[/code]软件详情:http://gitee.com/mirrors/Javalin

来自:开源中国社区
文章评论

共有 0 条评论