在spring mvc中,我注意到模型作为名称/值对传递到ModelAndView中。
是否可以创建强类型模型并将其传递给视图?
这样,视图中的调用者无法访问不存在的字符串索引。
答案 0 :(得分:2)
JSTL不是类型安全的 - 它是一种脚本语言。此外,您需要一个复杂的验证工具来检查jsp的正确性。
所以我认为你不能这样做。
答案 1 :(得分:1)
这是Spring MVC的一个重要限制。
使用标准JSP,您可以使用
DENSE_RANK
现代IDE将自动完成JSTL的使用,您可以在IDE中使用“转到定义”等功能。
Spring MVC的名称/值对设计仅适用于简单的页面,当事情变得复杂时,它很难使用和维护。
此外,您可能希望查看使用JSF。使用PrimeFaces等库时,键入的模型和非常完整的UI组件集。
答案 2 :(得分:0)
如果您考虑使用其他视图技术,请查看Scalate for Spring MVC。它不会更改您的模型,但您在模板文件的标题中声明了您的属性。在正常的Scalate使用中,如果找不到变量或者是错误的类,这将调用模板抛出错误。
检查this thread是否有想法。对不起,我没有更多信息。将自己尝试。