1

我是 Spring MVC 的新手,有使用 PHP MVC 框架和 ROR 的经验。我很难找到合适的方法来组织前端资产并将其包含到视图模板中。

这是 Roo 为默认样式表生成的默认代码:

<spring:theme code="styleSheet" var="roo_css"/> 
<spring:url value="/${roo_css}" var="roo_css_url"/>  
<spring:url value="/static/images/favicon.ico" var="favicon" />
<link rel="stylesheet" type="text/css" media="screen" href="${roo_css_url}"></link>

这对我来说似乎完全没有必要。我们从 spring:theme 代码列表中调用一个变量。将其分配给视图范围/中的变量,然后调用该视图变量

理想情况下,我希望有一些路径标记,例如:${imagePage}、${stylePath} 等。我们可以插入并用于软链接。

希望有人可以向我指出一些高质量的 SpringMVC 文档或给出一些示例。谢谢

更新:

我已经看到了一些示例,并且 engfer 在下面发布了一个示例,建议使用 html 中的 spring 标记来输出 href,如下所示

<a href="<spring:url url='/about'/ />">About</a>

这是可以接受的,但是我从码头收到以下错误

Caused by: org.apache.jasper.JasperException: /WEB-INF/views/footer.jspx(6,22) The value of attribute "href" associated with an element type "null" must not contain the '<' character.

我错过了编码吗?还是DTD?

更新:

显然,内联 href 样式仅适用于 .jsp 文件,因为 .jspx (我使用的是什么)是严格的 xml。.jspx 比 .jsp 有什么好处?

4

1 回答 1

1

您从 Roo 提供的代码有点不必要。如果您查看 tkeE2036 指出的 Spring MVC 文档...您将看到主题部分http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html #mvc-themeresolver

<link rel="stylesheet" href="<spring:theme code='styleSheet'/>" type="text/css"/>

Spring 主题标签使您能够将您的 CSS/images/js(想象一个带有单词“Hello”的图像,需要更改为英语/西班牙语/等)国际化为单独的国际化主题文件,这些文件遵循http:/ /java.sun.com/javase/6/docs/api/java/util/ResourceBundle.html约定,Spring 将自动解析正确的资源捆绑主题。


如果您仍然想要您的${imagePath}或其他任何东西,您可以使用<spring:url/>标签来完成您的工作。

<spring:url value="/images" var="imagePath"/>
<link rel="stylesheet" href="${imagePath}/foo.png" type="text/css"/>
于 2010-06-25T17:43:07.900 回答