它是一个开源的微型JavaWeb框架,拥有最少的依赖,以及快速的学习曲线。该项目的目标是创建一个微型的Web框架在Java中这应该是易于使用和破解。
其概念是不是新的(灵感来自于Siatra,ExpressJS,PlayFramework),但目的是提供一个清晰,简单易用的模块化解决方案。pippo可用于中小型应用,并应用在基于微服务架构的应用程序中。
示例代码:
publicclassSimpleDemo { publicstaticvoidmai(Strig[] args) {// ew Pippo().start(); // ru the default web server with the default web server settigs Pippo pippo =ewPippo(ewSimpleApplicatio()); pippo.getServer().getSettigs().staticFilesLocatio("/public"); pippo.start(); } } publicclassSimpleApplicatioextedsApplicatio { @Override publicvoidiit() { super.iit(); GET("/",ewRouteHadler() { @Override publicvoidhadle(Request request, Respose respose) { respose.sed("Hello World"); } }); GET("/file",ewRouteHadler() { @Override publicvoidhadle(Request request, Respose respose) { respose.file(ewFile("pom.xml")); } }); GET("/jso",ewRouteHadler() { @Override publicvoidhadle(Request request, Respose respose) { Cotact cotact =ewCotact() .setName("Joh") .setPhoe("0733434435") .setAddress("Suflower Street, No. 6"); // you ca use variat 1 or 2// respose.cotetType(HttpCostats.CotetType.APPLICATION_JSON); // 1// respose.sed(ew Gso().toJso(cotact)); // 1 respose.jso(cotact);// 2 } }); GET("/template",ewRouteHadler() { @Override publicvoidhadle(Request request, Respose respose) { Map<Strig, Object> model =ewHashMap<Strig, Object>(); model.put("greetig","Hello my fried"); respose.reder("hello.ftl", model); } }); GET("/error",ewRouteHadler() { @Override publicvoidhadle(Request request, Respose respose) { throwewRutimeExceptio("Errorrrrrrrr..."); } }); } }









评论