pippo微型 Java Web 框架
它是一個(gè)開源的微型Java Web框架,擁有最少的依賴,以及快速的學(xué)習(xí)曲線。 該項(xiàng)目的目標(biāo)是創(chuàng)建一個(gè)微型的Web框架在Java中這應(yīng)該是易于使用和破解。
其概念是不是新的 (靈感來自于 Sinatra, Express JS, Play Framework),但目的是提供一個(gè)清晰,簡(jiǎn)單易用的模塊化解決方案。 pippo可用于中小型應(yīng)用,并應(yīng)用在基于微服務(wù)架構(gòu)的應(yīng)用程序中。
示例代碼:
publicclassSimpleDemo {
publicstaticvoidmain(String[] args) {
// new Pippo().start(); // run the default web server with the default web server settings
Pippo pippo =newPippo(newSimpleApplication());
pippo.getServer().getSettings().staticFilesLocation("/public");
pippo.start();
}
}
publicclassSimpleApplicationextendsApplication {
@Override
publicvoidinit() {
super.init();
GET("/",newRouteHandler() {
@Override
publicvoidhandle(Request request, Response response) {
response.send("Hello World");
}
});
GET("/file",newRouteHandler() {
@Override
publicvoidhandle(Request request, Response response) {
response.file(newFile("pom.xml"));
}
});
GET("/json",newRouteHandler() {
@Override
publicvoidhandle(Request request, Response response) {
Contact contact =newContact()
.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",newRouteHandler() {
@Override
publicvoidhandle(Request request, Response response) {
Map<String, Object> model =newHashMap<String, Object>();
model.put("greeting","Hello my friend");
response.render("hello.ftl", model);
}
});
GET("/error",newRouteHandler() {
@Override
publicvoidhandle(Request request, Response response) {
thrownewRuntimeException("Errorrrrrrrr...");
}
});
}
}評(píng)論
圖片
表情
