简单的Java Web框架

有没有简单的Java Web框架像sinatra(对于ruby)或web.py(对于Python)?

如果你想要一个严格的Java框架, Spark可能是一个替代scheme:

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

玩 。 没有尝试过,但听到只有好的事情,似乎是相当新手友好。

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

这里是一个Servlets教程的链接 。 您还需要知道如何打包和部署Web应用程序; 为此,我通常将人们指向Tomcat手册 (请参阅“第一个Web应用程序”一节)。

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

如果您不严格要求Java,请查看Grails 。 这是一个构build在Groovy上的Web应用程序框架,它是一种类似于Python和Ruby的dynamic语言,编译为JVM。

JAX-RS。

Java EE 6服务器(如GlassFish)默认捆绑它。

如果使用Tomcat,则可以使用Jersey , Apache CXF或Restlet实现。

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

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

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

可以像JRuby一样使用Sinatra

看看这两个以及:1. activeweb和2. dropwizard

你可能想看看这2个常规项目:

https://github.com/webdevwilson/graffiti

https://github.com/bleedingwolf/Ratpack

真的很类似Sinatra。 虽然可能会有点出血:-)有趣和有前途的不会less。

检查SerfJ:Java最简单的Rest Rest Framework :

使用SerfJ是开发Java REST Web应用程序最简单的方法。 它可以帮助您在优雅的MVC架构上开发您的应用程序,比configuration更重视约定,例如,您不必具有configuration文件或注释来指定哪个视图服务于控制器的方法。 但是,SerfJ是非常灵活的库,所以如果您想跳过这些约定,您可以根据自己的喜好configuration应用程序的行为。

该框架试图满足JSR 311规范,但并没有遵循每一个点,因为目的是要有一个非常直观的库,并且规范的一些方面超出了SerfJ的范围。

SerfJ是开源的,在Apache许可证2.0版下发布。

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

支持Servlet的Java最小的“可用”Web服务器是Miniature JWS 。 说实话,没有理由运行不支持Servlet的Java Web服务器。 如果你想做REST, Restlet有一个内置的HTTP守护进程,这意味着你可以运行它作为一个独立的Web服务器 。

HybridJava框架非常简单。 当然,它像Servlet API之上的API一样构build,但是处理页面和组件而不是请求和响应。 换句话说,这是真正的MVC。

Step是由Sinatra启发的Scala框架。

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