web 环境,非web 环境中,freemarker 结合 spring使用。
2009-01-13 09:49
513 查看
<beans>
<bean id="freeMarkerConfigurer" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF/config/template/" />
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="default_encoding">GBK</prop>
<prop key="locale">zh_CN</prop>
</props>
</property>
</bean>
<bean id="freeMarkerConfiguration" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath" value="file:D:/Java/workspace/project/WebContent/WEB_INF/config/template" />
</bean>
<bean id="templateService" class="com.ahtec.ssi.service.impl.TemplateServiceFreeMarkerImpl">
<property name="freeMarkerConfigurer" ref="freeMarkerConfigurer" />
<property name="freeMarkerConfiguration" ref="freeMarkerConfiguration" />
</bean>
</beans>
//WEB
Template t = freeMarkerConfigurer.getConfiguration().getTemplate(templateName);
return FreeMarkerTemplateUtils.processTemplateIntoString(t, model);
//NONE WEB
Template t = freeMarkerConfiguration.getTemplate(templateName);
return FreeMarkerTemplateUtils.processTemplateIntoString(t, model);
在 web 中,可以方便地定位到WEB_INF目录,但在非web中就不那么容易了。综合考虑,将ftl模板放在classpath目录挺好的。用classpath:来定位模板位置。
补一段代码:
<bean id="freeMarkerConfigurer" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF/config/template/" />
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="default_encoding">GBK</prop>
<prop key="locale">zh_CN</prop>
</props>
</property>
</bean>
<bean id="freeMarkerConfiguration" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean">
<property name="templateLoaderPath" value="file:D:/Java/workspace/project/WebContent/WEB_INF/config/template" />
</bean>
<bean id="templateService" class="com.ahtec.ssi.service.impl.TemplateServiceFreeMarkerImpl">
<property name="freeMarkerConfigurer" ref="freeMarkerConfigurer" />
<property name="freeMarkerConfiguration" ref="freeMarkerConfiguration" />
</bean>
</beans>
//WEB
Template t = freeMarkerConfigurer.getConfiguration().getTemplate(templateName);
return FreeMarkerTemplateUtils.processTemplateIntoString(t, model);
//NONE WEB
Template t = freeMarkerConfiguration.getTemplate(templateName);
return FreeMarkerTemplateUtils.processTemplateIntoString(t, model);
在 web 中,可以方便地定位到WEB_INF目录,但在非web中就不那么容易了。综合考虑,将ftl模板放在classpath目录挺好的。用classpath:来定位模板位置。
补一段代码:
@Component public class TemplateServiceFreeMarkerImpl implements TemplateService { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Autowired private FreeMarkerConfigurer freeMarkerConfigurer; @Autowired private Configuration freeMarkerConfiguration; public void setFreeMarkerConfigurer(FreeMarkerConfigurer freeMarkerConfigurer) { this.freeMarkerConfigurer = freeMarkerConfigurer; } public void setFreeMarkerConfiguration(Configuration freeMarkerConfiguration) { this.freeMarkerConfiguration = freeMarkerConfiguration; } public String getContent(String templateName, Map<String, Object> model) { try { Template t = freeMarkerConfigurer.getConfiguration().getTemplate(templateName); return FreeMarkerTemplateUtils.processTemplateIntoString(t, model); } catch (Exception ex) { ex.printStackTrace(); logger.equals(ex.getMessage()); try { Template t = freeMarkerConfiguration.getTemplate(templateName); return FreeMarkerTemplateUtils.processTemplateIntoString(t, model); } catch (Exception e) { e.printStackTrace(); logger.equals(e.getMessage()); } } return null; } }
相关文章推荐
- web 环境,非web 环境中,freemarker 结合 spring使用。
- 爬虫框架webmagic与spring boot的结合使用
- 一头扎进springboot之使用Freemarker模板引擎渲染web视图
- Spring Boot 与 Kotlin使用Freemarker模板引擎渲染web视图
- Web 环境中使用 FreeMarker 模板引擎的配置方法
- [原创]java WEB学习笔记99:Spring学习---Spring Bean配置:自动装配,配置bean之间的关系(继承/依赖),bean的作用域(singleton,prototype,web环境作用域),使用外部属性文件
- elasticsearch结合spring springmvc jest 使用做成web架构
- SpringMVC+Spring4+hibernate5使用java类配置spring和springmvc环境(不用配置web.xml)
- MyBatis学习总结(八)——Mybatis3.x与Spring4.x整合 一、搭建开发环境 1.1、使用Maven创建Web项目 执行如下命令: mvn archetype:create
- eclipse 使用maven 构建springbooot+mysql +freemarker 简单web 项目
- elasticsearch结合spring springmvc jest 使用做成web架构
- 012-Spring Boot web【一】创建、请求、使用jsp、freemarker,tomcat、jetty
- 爬虫框架webmagic与spring boot的结合使用
- 在Spring环境下结合TestNG使用DbUnit
- 爬虫框架webmagic与spring boot的结合使用--转
- Spring之六 在Web环境中使用Spring
- 在 Spring Web MVC 环境下使用 DWR
- 爬虫框架webmagic与spring boot的结合使用
- Spring Boot 学习笔记【6】使用FreeMarker与BootStrap开发Web
- elasticsearch结合spring springmvc jest 使用做成WEB架构