三个类似Sinatra的Java框架介绍

Sinatra 是一个微型的 Ruby 语言的 Web 框架,据说 100 行代码就可以开发一个博客软件。一个简单的hello world的web应用用Sinatra只需5行代码:

 
 
 
  1. require 'rubygems' 
  2. require 'sinatra' 
  3. get '/' do 
  4.   'Hello World' 
  5. end 

而 Sinatra 这种框架的思路被越来越人所接受,也因此创造出参考该框架的其他语言移植版本。

下面是三个 Java 语言实现的类 Sinatra 框架:

1. Turismo

Turismo 是一个类似 Sinatra 的 Java 的微型 Web 框架。

示例代码:

 
 
 
  1. public class AppRoutes extends RoutesList {  
  2.     protected void map() {  
  3.         get("/wildcard/*/:id"new Action() {  
  4.             public void run() {  
  5.                 String id = params("id");  
  6.                 print("wildcard id " + id);  
  7.             }  
  8.         });  
  9.     }  

2. Spark Framework

Spark是一个微型的Java Web框架,它的灵感来自于Sinatra,它的目的是让你以最小的代价创建出一个Java Web应用。

示例代码:

 
 
 
  1. import static spark.Spark.*;  
  2. import spark.*;  
  3.  
  4. public class HelloWorld {  
  5.  
  6.    public static void main(String[] args) {  
  7.         
  8.       get(new Route("/hello") {  
  9.          @Override 
  10.          public Object handle(Request request, Response response) {  
  11.             return "Hello World!";  
  12.          }  
  13.       });  
  14.    }  

3. Scalatra

Scalatra 是一个 Scala 语言仿 Sinatra 的框架。

示例代码:

 
 
 
  1. import org.scalatra._  
  2.  
  3. class ScalatraExample extends ScalatraServlet {  
  4.   get("/") {  
  5.     <h1>Hello, world!</h1>  
  6.   }  

总结:

Sinatra 是一种全堆栈的 Web 框架解决方案,这种思路用在 Java 上,你觉得靠谱吗?

说说你的想法吧?

原文链接:http://www.oschina.net/question/12_35901

【编辑推荐】

  1. Java调用C/C++编写的第三方dll动态链接库
  2. Apache Camel 2.9.0发布 Java规则引擎
  3. ZK 5.0.10发布 基于Java的Ajax框架
  4. MOEA Framework 1.9发布 开发MOEAs算法的Java类库
  5. JActor 1.0发布 Actor模式的Java实现
THE END