- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我第一次遇到例如Ruby 的 Sinatra 框架或 PHP 的 Zend 框架,我想知道在 Java 中是否有足够的东西,这一切看起来都很臃肿。尽管周围有无数的框架,但到目前为止,我还没有找到一个我认为非常适合我想要实现的那种架构的框架。
我想设计一个 Web 应用程序,该应用程序需要大量使用 Javascript,并且大部分应用程序逻辑都在客户端实现,Java 后端或多或少只是用作数据存储或执行复杂的计算。
我确实在这里查看了相关问题,但我找不到完美的答案,每个建议的解决方案都有一个不符合要求的怪癖。
这就是我正在寻找的,具有以下功能的开源框架:
基本上这意味着一个 MVC 框架为我执行路由并为 View 提供模板支持,但其余部分是完全模块化的,没有魔法。是否有任何简约的框架可以提供这个(或者至少是模块化的,可以这样配置)?
最佳答案
Play Framework 怎么样? ?
Convention over Configuration
Play 只有很少的配置文件。它的大部分结构都是按照惯例。例如基本结构是这样的:
|
+---/app - All executable artifacts go here (java files, conf files and view templates).
| |
| +---/model - Your model Java classes.
| |
| +---/view - Your view templates.
| |
| +---/controller - Your controller classes
|
|---/conf - Contains all configuration files for the application. Initially contains application configuration and routing table.
|
|---/lib - Libraries your appliaction needs. Added automatically to classpath.
|
|---/log
|
|---/public - Public stuff are your static assets that your server gives directly
|
|---/test
|
|---/tmp - All your temporarily compiled .class files are here
No XML configuration except for web.xml
Play 没有 XML 配置,包括没有 web.xml。它有一个路由文件。请参阅下面的示例,它用于路由。
Pure Java (no Scala, no Groovy, ...)
它是纯 Java,但您可以通过插件使用 Scala 或 Groovy。
- natural REST-style URLs such as /news/2011/july (no .do, no .jsp, ...)
- REST-aware
来自网站:
Play 是一个真正的“无共享”系统。为 REST 做好了准备,它可以通过在多台服务器上运行同一应用程序的多个实例来轻松扩展。
事实上,以类似 Rest 的方式进行路由非常简单:
# Play 'routes' configuration file…
# Method URL path Controller
GET / Application.index
GET /about Application.about
POST /item Item.addItem
GET /item/{id} Item.getItem
GET /item/{id}.pdf Item.getItemPdf
一旦你习惯了玩一下,不难猜出哪个会去哪里。
- it shouldn't force me to deploy on an application server (e.g. EJB should be optional)
它没有。实际上,您通过保存文件进行部署。 EJB 是完全可选的,.war
、.ear
和其他部署形式也是如此。
code generation as in Rails would be awesome but not mandatory
我认为它不会生成太多代码,但我不是 100% 的。它确实会自动创建所有必需的文件夹并实例化一个基本示例页面。我不知道 Rails 是否会生成其他任何东西...
MVC would be nice, but
- I'd like to be able to choose the M part, choose the persistence libraries on my own (no bundling).
- No automatically generated code for the view, neither HTML, Javascript, nor CSS
- An integrated template language would be nice, but it should be minimalistic (simple control flow,
.html
、.css
、.js
和其他文件中使用模板语言,但它不会生成 HTML创建动态页面。我有基于 Groovy 模板语言的内置模板语言,例如
You have ${emails.unread ?: 'no'} ${emails.unread?.pluralize('email')} !
其他优点:
缺点:
关于java - 轻量级 Java Web 框架 - 特定要求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6638488/
我需要开发一个简单的网站,我通常使用 bootstrap CSS 框架,但是我想使用 Gumbyn,它允许我使用 16 列而不是 12 列。 我想知道是否: 我可以轻松地改变绿色吗? 如何使用固定布局
这个问题在这里已经有了答案: 关闭 13 年前。 与直接编写 PHP 代码相比,使用 PHP 框架有哪些优点/缺点?
我开发了一个 Spring/JPA 应用程序:服务、存储库和域层即将完成。 唯一缺少的层是网络层。我正在考虑将 Playframework 2.0 用于 Web 层,但我不确定是否可以在我的 Play
我现有的 struts Web 应用程序具有单点登录功能。然后我将使用 spring 框架创建一个不同的 Web 应用程序。然后想要使用从 struts 应用程序登录的用户来链接新的 spring 应
我首先使用Spark框架和ORMLite处理网页上表单提交的数据,在提交中文字符时看到了unicode问题。我首先想到问题可能是由于ORMLite,因为我的MySQL数据库的字符集已设置为使用utf8
我有一个使用 .Net 4.5 功能的模块,我们的应用程序也适用于 XP 用户。所以我正在考虑将这个 .net 4.5 依赖模块移动到单独的项目中。我怎样才能有一个解决方案,其中有两个项目针对不同的版
我知道这是一个非常笼统的问题,但我想我并不是真的在寻找明确的答案。作为 PHP 框架的新手,我很难理解它。 Javascript 框架,尤其是带有 UI 扩展的框架,似乎通过将 JS 代码与设计分开来
我需要收集一些关于现有 ORM 解决方案的信息。 请随意编写任何编程语言。 你能谈谈你用过的最好的 ORM 框架吗?为什么它比其他的更好? 最佳答案 我使用了 NHibernate 和 Entity
除了 Apple 的 SDK 之外,还有什么强大的 iPhone 框架可供开始开发?有没有可以加快开发时间的方法? 最佳答案 此类框架最大的是Three20 。 Facebook 和许多其他公司都使用
有人可以启发我使用 NodeJS 的 Web 框架吗?我最近开始从免费代码营学习express js,虽然一切进展顺利,但我对express到底是什么感到困惑。是全栈框架吗?纯粹是为了后端吗?我发现您
您可以推荐哪种 Ajax 框架/工具包来构建使用 struts 的 Web 应用程序的 GUI? 最佳答案 我会说你的 AJAX/javascript 库选择应该较少取决于你的后端是如何实现的,而更多
我有生成以下错误的 python 代码: objc[36554]: Class TKApplication is implemented in both /Library/Frameworks/Tk.
首先,很抱歉,如果我问的问题很明显,因为我没有编程背景,那我去吧: 我想运行一系列测试场景并在背景部分声明了几个变量(我打印它们以仔细检查它们是否已正确声明),第一个是整数,另外两个字符串为你可以看到
在我们承担的一个项目中,我们正在寻找一个视频捕获和录制库。我们的基础工作(基于 google 搜索)表明 vlc (libvlc)、ffmpeg (libavcodec) 和 gstreamer 是三
我试过没有运气的情况下寻找某种功能来杀死/中断Play中的正常工作!框架。 我想念什么吗?还是玩了!实际没有添加此功能? 最佳答案 Java stop类中没有像Thread方法那样的东西,由于种种原因
我们希望在我们的系统中保留所有重大事件的记录。例如,在数据库可能存储当前用户状态的地方,事件日志应记录对该状态的所有更改以及更改发生的时间。 事件记录工具应该尽可能接近于事件引发器的零开销,应该容纳结
那里有 ActionScript 2.0/3.0 的测试框架列表吗? 最佳答案 2010-05-18 更新 由于这篇文章有点旧,而且我刚刚收到了赞成票,因此可能值得提供一些更新的信息,这样人们就不会追
我有一个巨大的 numpy 数组列表(一维),它们是不同事件的时间序列。每个点都有一个标签,我想根据其标签对 numpy 数组进行窗口化。我的标签是 0、1 和 2。每个窗口都有一个固定的大小 M。
我是 Play 的新手!并编写了我的第一个应用程序。这个应用程序有一组它依赖的 URL,从 XML 响应中提取数据并返回有效的 URL。 此应用程序需要在不同的环境(Dev、Staging 和 Pro
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 4年前关闭。 Improve thi
我是一名优秀的程序员,十分优秀!