Spark 2.0.0 支持 Java 8 Lambda

    xiaoxiao2023-06-23  158

    Spark是一个微型的Java Web框架,它的灵感来自于Sinatra,它的目的是让你以最小的代价创建出一个Java Web应用。最近更新到2.0.0,支持Java 8 ,支持Lambda,Demo代码看起来非常有吸引力

    最新版本已经可以通过maven center仓库依赖进来

    <dependency> <groupId>com.sparkjava</groupId> <artifactId>spark-core</artifactId> <version>2.0.0</version> </dependency>

    入门指南

    import static spark.Spark.*; import spark.*; public class HelloWorld { public static void main(String[] args) { get("/hello", (request, response) -> { return "Hello World!"; }); } }

    运行

    http://localhost:4567/hello

    是否非常简单?

    基本功能

    Spark的应用程序的主要构建块是一组路由。路由是由三个部分组成:一个动词(get, post, put, delete, head, trace, connect, options)路径(/hello, /users/:name)一个回调(request, response) -> { }路由匹配的顺序定义。调用第一个匹配的路由请求。

    import static spark.Spark.*; import spark.Request; import spark.Response; import spark.Route; /** * A simple example just showing some basic functionality */ public class SimpleExample { public static void main(String[] args) { // setPort(5678); <- Uncomment this if you wan't spark to listen on a port different than 4567. get("/hello", (request, response) -> { return "Hello World!"; }); post("/hello", (request, response) -> { return "Hello World: " + request.body(); }); get("/private", (request, response) -> { response.status(401); return "Go Away!!!"; }); get("/users/:name", (request, response) -> { return "Selected user: " + request.params(":name"); }); get("/news/:section", (request, response) -> { response.type("text/xml"); return "<?xml version=\"1.0\" encoding=\"UTF-8\"?><news>" + request.params("section") + "</news>"; }); get("/protected", (request, response) -> { halt(403, "I don't think so!!!"); return null; }); get("/redirect", (request, response) -> { response.redirect("/news/world"); return null; }); get("/", (request, response) -> { return "root"; }); } }

    文章转载自 开源中国社区 [http://www.oschina.net]

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)