- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在启动一个新的相当大的 web 应用程序,我正在使用 Spring MVC 来实现完整的 MVC 架构,我真的不想改变它。最重要的是,我正在寻找一种 View 技术,并最终与 JSF 关闭,因为 JSF/facelets 在官方 EE 规范中,这意味着它们将成为 future 。 Plus prime faces 在实现良好的 UI 方面看起来很有希望。我知道 JSF 是一个 MVC 框架,我只是想利用它的 View 部分来减少开发时间,同时实现良好和灵活的响应式 UI
但是我在 StackOverflow 本身上浏览了几篇禁止使用 Spring MVC + JSF 的帖子。比如这个
这个问题在 2011 年得到了解答,现在新的 Java EE 规范也发布了,并且发生了许多变化。这一点是否仍然是我们不应该使用 JSF+Spring MVC?如果是真的,那么替代品是什么。一个对我来说不错的选择是 Thymeleaf ,但唯一让我困扰的是忽略官方规范是个好主意吗?
最佳答案
JSF 可能可以与 Spring MVC 集成(我不太确定,请参阅我的回答末尾的链接),但它看起来不太适合我。主要是因为 JSF 是基于组件的,而 Spring MVC 是基于操作的。在 Spring MVC 中, Controller 进行处理并将结果传递给呈现 View 的任何东西(jsp、html、thymeleaf、apache tiles 等)。 Thymeleaf 是一个不错的选择,我喜欢它的模板方法。
我建议查看其他替代方案而不是 JSF:
JS 框架:
我个人更喜欢这个用于我的项目,并且有很多选项可供选择,例如 jQuery/jQuery UI、ExtJS 等来创建 View 。您可以将它们结合起来并使它们的元素与 Bootstrap 等流畅的框架一起工作,以便它们在所有屏幕尺寸上都能很好地表现(不确定 PrimesFaces/RichFaces 组件在所有设备上的表现如何)
编译为 JS 的框架:
这里有两个不错的框架可供选择 - Vaadin 和 GWT。我只使用过 Vaadin 而不是 GWT,所以不会对此发表太多评论。如果您不想直接摆弄 javascript,请选择此项。
不正确只有使用官方 Java EE 规范才能与 future 同步的说法是不正确的。 HTML5、JS 框架等与 JSF 一样是 future ,如果不是更多的话!当然,最近的 JSF 看起来也不错(我还没有用它制作任何生产代码,不过已经在业余项目中探索过它)但是你最好将它与 PrimesFaces/RichFaces 单独使用,而不是将它与 Spring MVC 结合使用。
在中间立场,您可以使用 Facelets 而不是 Thymeleaf 在 Spring MVC 中对 View 进行模板化。另一方面,您可以将 JSF 与 Spring DI 一起使用,但正如我之前所说,不要将 JSF 及其组件库与 Spring MVC 混合使用。
更新:如果您绝对想尝试一下,这里有一些链接:
关于java - JSF(view) + Spring MVC 糟糕的选择?即使在 JSF 成为正式的 EE 规范之后,还有任何替代品吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19194581/
我想在这里说的是我在从之前离开的相同状态重新启动我的应用程序时遇到的问题。我在这方面做了很多研发,并且已经解决了 stackoverflow 中发布的问题。所以请不要说它是重复的。 我试过设置这些选项
当我在我的类中实现 __cmp__ 函数时,python 是否会在内部重载“==”,我们在 C++ 中是如何做到的? 只是好奇。我是 python 的新手。 :) 最佳答案 ==的含义当您定义 __c
我在 Raspberry Pi2 上安装了 Gitlab,几个月来它运行良好。但自从关闭了RPi的电源后,它就不再起作用了。网页返回502错误。 502 Whoops, GitLab is takin
有人知道用户登陆带有Webfonts的页面时为什么Google Chrome浏览器崩溃吗 它并不会一直发生,而是经常发生 我刚得到一个蓝屏页面,却不知道为什么:该页面不是来自重定向时就很好了。 这是我
当我登录时,Skype始终会给出此错误。 糟糕,Skype存在问题。尝试注销然后重新登录。 STARTUP_LOAD_ERROR MACBOOK 最佳答案 Macbook 用户 退出Skype 回家
我正在尝试从 flutter 开始,首先我在 cmd 上运行 flutter doctor 它有效。在我安装了 ANDROID SDK 之后,同样的命令 flutter doctor 给了我异常:
从 android studio 终端运行 flutter attach 不工作。显示错误flutter 意外退出。 终端输出: flutter attach Checking for adverti
当使用 TinyMCE 4 测试所有浏览器时,Chrome 非常慢。 (我尝试从 TinyMCE 中删除所有插件,但没有任何区别。) Chrome 需要大约 20-25 秒在 TinyMCE 中呈现一
我试图让下面的脚本工作,以便从远程服务器(服务器 1)读取特定目录中的 CSV 文件列表,并将数据移植到另一台服务器的 PostgreSQL 数据库中。 我已经创建了一个 rsa SSH key 并将
在嵌入式 linux 环境中(在 PowerPC 上定制的 2.4.25)几个小时后我得到以下内核 panic : Oops: kernel access of bad area, sig: 11 N
在将现有 Node.js (Hapi.js) + RethinkDB 从 OVH VPS(最小 vps)迁移到 AWS Lambda( Node )+ DynamoDB 的过程中,我最近遇到了一个非常
我是一名优秀的程序员,十分优秀!