Spark 2.0.0 支持 Java 8 Lambda
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!"; });
}
}</pre>
運行
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"; });
} }</pre>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!