I suppose this is a strange question to the huge majority of programmers that work daily with Java. I don't. I know Java-the-language, because I worked on Java projects, but not Java-the-world. I never made a web app from scratch in Java. If I have to do it with Python, Ruby, I know where to go (Django or Rails), but if I want to make a web application in Clojure, not because I'm forced to live in a Java world, but because I like the language and I want to give it a try, what libraries and frameworks should I use?
当前回答
到目前为止,我所遇到的最好的Clojure web框架是Compojure: http://github.com/weavejester/compojure/tree/master
它很小,但功能强大,并且具有漂亮优雅的语法。(它在底层使用Jetty,但它对您隐藏了Servlet API,除非您需要它,但这种情况不会经常发生)。去看看那个URL的README,然后下载一个快照并开始播放。
其他回答
你也可以尝试Clojure线圈,http://github.com/zubairq/coils -免责声明:我是作者
如今,Pedestal是一个值得一看的框架。它是一个构建在Ring之上的服务器端框架,但是通过暂停和恢复特定的请求(否则缓慢的请求实际上会阻塞服务器线程),也可以从初始线程中释放传入的请求。可能有点像JavaBean。
其他很酷的框架还有hoplon。io和David Nolen的Om(基于React)
声明:我是作者。
我把一个leiningen模板结合luminusweb和栗子模板。 所以你得到了一些东西,你可以用它来构建clojure代码以及前端和后端clojurescript代码。 此外,它还提供用户管理、一些简单的CRUD生成和一些更小的功能:https://github.com/sveri/closp
以Luminus web框架为例。我没有隶属关系,但从我尊敬的朋友那里听到了一些好消息。
Compojure是我用来创建一个小型博客应用程序的工具。它以Sinatra为蓝本,Sinatra是一个最小的、轻量级的Ruby web框架。我主要使用的是路由,就像Sinatra的一样。它看起来是这样的:
(GET "/post/:id/:slug"
(some-function-that-returns-html :id :slug))
没有ORM或模板库,但它有将向量转换为HTML的函数。