微型Java Web框架:pippo
它是一個開源(Apache許可證)微型Java Web框架,擁有最少的依賴,以及快速的學習曲線。 該項目的目標是創建一個微型的Web框架在Java中這應該是易于使用和破解。
其概念是不是新的 (靈感來自于 Sinatra, Express JS, Play Framework),但目的是提供一個清晰,簡單易用的模塊化解決方案。 pippo可用于中小型應用,并應用在基于微服務架構的應用程序中。
Artifacts
- Pippo Core
pippo-core(jar) - Pippo Jetty
pippo-jetty(jar) - Pippo Freemarker
pippo-fremarker(jar)
</ul>
public class SimpleDemo {
public static void main(String[] args) {
// new Pippo().start(); // run the default web server with the default web server settings
Pippo pippo = new Pippo(new SimpleApplication());
pippo.getServer().getSettings().staticFilesLocation("/public");
pippo.start();
}
}
public class SimpleApplication extends Application {
@Override
public void init() {
super.init();
GET("/", new RouteHandler() {
@Override
public void handle(Request request, Response response) {
response.send("Hello World");
}
});
GET("/file", new RouteHandler() {
@Override
public void handle(Request request, Response response) {
response.file(new File("pom.xml"));
}
});
GET("/json", new RouteHandler() {
@Override
public void handle(Request request, Response response) {
Contact contact = new Contact()
.setName("John")
.setPhone("0733434435")
.setAddress("Sunflower Street, No. 6");
// you can use variant 1 or 2
// response.contentType(HttpConstants.ContentType.APPLICATION_JSON); // 1
// response.send(new Gson().toJson(contact)); // 1
response.json(contact); // 2
}
});
GET("/template", new RouteHandler() {
@Override
public void handle(Request request, Response response) {
Map<String, Object> model = new HashMap<String, Object>();
model.put("greeting", "Hello my friend");
response.render("hello.ftl", model);
}
});
GET("/error", new RouteHandler() {
@Override
public void handle(Request request, Response response) {
throw new RuntimeException("Errorrrrrrrr...");
}
});
}
}
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!