我的团队已经准备好在 spring 框架中创建一个项目并成功运行。现在我决定让它运行得更快。
现有项目: 我的开发人员尽其所能,使用jsp创建了动态输出的css页面。
现有代码:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<jsp:include page="/WEB-INF/common/layout/head.jsp" />
< jsp:include page="/WEB-INF/common/css/index.jsp" />
</head>
输出:
<style type="text/css">
body{background: #ffffff url('<c:url value='/resources/images/logo/logo_small.png'/>') no-repeat scroll center center}
</style>
此代码或项目中没有错误,这工作正常。
我需要的是,我的 css 文件需要通过标题中的链接标签加载。像这样的东西:
<link rel="stylesheet" href="/mysite/resource/css/sitemap/index.css" type="text/css">
这将通过在浏览器中捕获来加速。
我到目前为止所做的: 我创建了一个指向 jsp 的 url。
<c:if test="${branch == 'sitemap'}">
<c:if test="${page == 'index'}">
<%@include file="/myfile/dynamic/css/layout/index.jsp" %>
</c:if>
</c:if>
这段代码可以吗?工作,但有一个问题。我需要替换样式类型的开始标签和结束标签。我通过以下代码导入和替换来做到这一点:
<c:set var="my_css">
<c:if test="${branch == 'sitemap'}">
<c:if test="${page == 'index'}">
<%@include file="/WEB-INF/common/css/index.jsp" %>
</c:if>
</c:if>
</c:set>
<c:set var="css" value='${fn:replace(fn:replace(fn:replace(my_css,"<style type=\\\"text/css\\\">", ""),"</style>", ""),"\'", "99999")}'/>
<compress:css enabled="true">
<c:out value='${css}'/>
</compress:css>
这里99999位置引起了问题。实际上我需要用 & #39; 替换它。
上面的代码工作正常,并用 9999 替换 '。但用 &.. 替换后它不起作用。& 本身再次变为 & amp;
信息: 它是一个已完成的项目。将动态生成更多的 CSS。全部在jsp页面中。好运是每个jsp页面只输出css代码。坏运气是它在顶部和底部包含脚本标签。另一个坏运气是在 url('') 上。
此代码在 fn:replace 标记中解决问题。
或者如果你有更好的建议,请告诉我。
我认为会有一个简单的选择。请让我知道您的建议、建议和帮助。