[Freemarker]사용자 정의 타임 스탬프 함수
3083 단어 freemarker
freemarker 설정 정보 먼저 보기:
<bean id="freemarkerConfig"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF/ftl/" />
<property name="defaultEncoding" value="UTF-8" />
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="locale">zh_CN</prop>
<prop key="default_encoding">UTF-8</prop>
</props>
</property>
<!-- -->
<property name="freemarkerVariables">
<map>
<entry key="urlTimestamp" value-ref="urlTimestampMethod" />
</map>
</property>
</bean>
<bean id="urlTimestampMethod" class="com.xxx.UrlTimestampMethodModel" />
다음은 UrlTimestampMethodModel 이 어떻게 실현 되 었 는 지 살 펴 보 겠 습 니 다.
// freemarker.template.TemplateDirectiveModel
@Component
public class UrlTimestampMethodModel implements TemplateDirectiveModel {
@Override
public void execute(Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body)
throws TemplateException, IOException {
// +
String strTimestamp = "";
try {
strTimestamp = String.valueOf(System.currentTimeMillis()) + getRandom(1000, 9999);
} catch (Exception ex) {
}
env.getOut().write(strTimestamp);
}
private int getRandom(int min, int max) {
Random random = new Random();
return Integer.parseInt(String.valueOf(random.nextInt(max) % (max - min + 1) + min));
}
}
템 플 릿 페이지 에서 이렇게 사용:
<a href="http://abc.com?t=<@urlTimestamp />">123</a>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
freemarker 오류 111. 잘못된 묘사 서술 2. 오류 원인 nums 정의가 없습니다. 3. 해결 방법...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.