简单的Java Web框架

时间:2010-01-24 01:33:21

标签: java web-frameworks

是否有像sinatra(用于ruby)或web.py(用于python)的简单java Web框架?

14 个答案:

答案 0 :(得分:50)

如果您想要一个严格的Java框架,Spark可能是另一种选择:

import static spark.Spark.*;

public class HelloWorld {
   public static void main(String[] args) {
      get("/hello", (req, res) -> "Hello World");
   }
}

答案 1 :(得分:22)

Play。我自己没有尝试过,但只听到有关它的好东西,似乎对初学者友好。

答案 2 :(得分:17)

我认为通过Java生成Web内容最简单的方法就是编写一个Servlet。就像web.py允许您定义GET方法一样,您可以实现Servlet的doGet()方法并将数据直接写回客户端。

这是Servlets教程的link。您还需要知道如何打包和部署Web应用程序;为此,我通常会将人们指向Tomcat manual(请参阅标题为“第一个Web应用程序”的部分)。

编写和部署Java Web应用程序的速度不会像Ruby或Python那样快,但Java并不是因其简洁性而闻名。

如果您不严格要求Java,请查看Grails。它是一个基于Groovy构建的Web应用程序框架,它是一种类似于Python和Ruby的动态语言,可以编译为JVM。

答案 3 :(得分:12)

<强> JAX-RS.

Java EE 6像GlassFish这样的服务器默认捆绑它。

如果您使用Tomcat,则可以使用JerseyApache CXFRestlet实施。

使用JAX-RS注释,Web开发感觉像Sinatra或Merb。顺便说一句,您不必使用Java作为语言,您可以使用Scala,Groovy,JRuby ......

答案 4 :(得分:7)

如果您只是在 Java中寻找演示框架,那么对我来说,Stripes 1 是最接近Java MVC框架的RoR理念:简单,优雅,并且需要最少的配置。

1 Stripes率先推出了用于Java Web开发的 Convention over Configuration 方法。虽然其他一些框架已经采用了一些原则(比如Spring MVC或带有插件的Struts2),但我仍然更喜欢Stripes,因为它做了一件事,做得很好。

答案 5 :(得分:7)

可以Sinatra

使用JRuby

答案 6 :(得分:4)

同样看看这两个:1。activeweb和2. dropwizard

答案 7 :(得分:3)

检查SerfJ : Simplest Ever Rest Framework for Java

  

使用SerfJ是开发Java REST Web的最简单方法   应用。它可以帮助您优雅地开发应用程序   MVC arquitecture,更加重视公约   配置,例如,您不必具有配置   文件或注释,以指定哪个视图服务   控制器的方法。但是,SerfJ是非常灵活的库,所以如果   你想跳过这些约定,你可以配置   您喜欢的应用程序的行为。

     

该框架试图满足JSR 311规范,但事实并非如此   遵循每一点,因为目的是拥有一个非常   直观的库,以及规范的某些方面都已出来   SerfJ的范围。

     

SerfJ是opensource,并在Apache License,Version下发布   2.0。

答案 8 :(得分:3)

您可能希望了解这两个常规项目:

https://github.com/webdevwilson/graffiti

https://github.com/bleedingwolf/Ratpack

真的很像Sinatra。可能会有点在前沿:-)有趣和有希望永远不会少。

答案 9 :(得分:3)

如果必须开发业务或数据库应用程序OpenXava是一个不错的选择。 OpenXava允许您开发一个完整的AJAX Web应用程序,只编写域类,无需生成代码并生成可用于生产的应用程序。代码很少,效果很好。

答案 10 :(得分:2)

支持我可以找到的Servlet的最小的“可用”Web服务器是Miniature JWS。老实说,没有理由运行不支持Servlet的Java Web服务器。如果您想要执行REST,Restlet有一个内置的HTTP守护程序,这意味着您可以将其作为stand alone web server运行。

答案 11 :(得分:2)

HybridJava framework非常简单。当然,它构建为类似于Servlet API之上的API,但处理页面和组件而不是请求和响应。换句话说,它确实是MVC。

答案 12 :(得分:1)

Step是受Sinatra启发的Scala框架。

答案 13 :(得分:1)

我可以向你推荐Struts2,因为我喜欢插件架构和常规插件,开发简单快捷。