velocity-tools spring中使用toolbox的一些破事
来源:互联网 发布:java微信开发教程 pdf 编辑:程序博客网 时间:2024/06/05 07:32
velocaity toobox 一下配置。
toolbox是velocity模板的自定义扩展,有点像jsp自定义jstl(有那么点相同的意思,实际上direcitive才是)。
今天我要说的重点主要是java代码中使用velocity模板引擎merge模板的时候toolbox的使用,至于velocityViewResolver 的配置
请参考http://blog.csdn.net/u012441887/article/details/49665779。
我直接贴出代码
@Configurationpublic class Toolbox { private Logger logger = LoggerFactory.getLogger(Toolbox.class); @Bean public ToolContext toolContext(){ ToolManager toolManager = new ToolManager(); String path = Toolbox.class.getClassLoader().getResource("/").getPath(); path = path.substring(0, path.indexOf("WEB-INF")) + "WEB-INF/conf/toolbox.xml";//很奇怪toolbox.xml不支持classpath路径读取,所以我们使用绝对路径去读取配置文件 toolManager.configure(path); ToolContext toolContext = toolManager.createContext(); logger.info("ToolContext is init"); return toolContext; }}public class VeloctiyToolbox{ @Autowird private ToolContext toolcontext;//将他设置成 spring的bean public String mergeTemplate(){ VelocityContext context = new VelocityContext(toolContext);//创建的时候给定toolbox就能起效 context.put("key",value);//设置自己的值 StringWriter sw = new StringWriter(); VelocityEngine engine = velocityConfig.getVelocityEngine(); engine.mergeTemplate(tempLate, "UTF-8", context, sw); return sw.toString(); } }
有了上面的代码我们就可以直接在 java代码里面merge velocity 模板。
接下来就是toolbox.xml配置,在WEB-INF下面创建toolbox.xml文件
这边我需要强调的是 velocity1.*跟2.0配置上有区别 而且向下不兼容。贴出2.0配置的代码
完成以上配置,美滋滋的去使用吧,小Tips 一般velocity 用在模板加载,比如短信模板,邮件模板。
阅读全文
0 0
- velocity-tools spring中使用toolbox的一些破事
- 在velocity使用toolbox.xml
- 在velocity使用toolbox.xml
- 在velocity使用toolbox.xml
- 在velocity使用toolbox.xml
- 在velocity使用toolbox.xml
- Spring中使用Velocity模板
- SHOGUN toolbox的一些使用心得
- spring 3+velocity tools 2.0
- spring中velocity的配置
- Spring MVC 4.0 + Velocity Tools 2.0遇到的问题
- spring boot 集成 velocity 时 toolbox.xml/velocity-toolbox.xml存放目录问题
- 在Spring MVC中使用Velocity
- velocity中directive的使用
- spring 3.0.5+velocity tools 2.0
- Spring+Velocity中模板路径的问题
- Spring+Velocity中模板路径的问题
- SpringBoot Velocity toolbox配置
- 不用判断语句找最大数--程序员面试宝典
- 使用quartz的时候遇见的一个问题
- linux内核编译错误
- Hashtable、synchronizedMap、ConcurrentHashMap 比较
- 二元信号量一个小例子
- velocity-tools spring中使用toolbox的一些破事
- Java和JavaScript的关系
- 对象处理好帮手Objects类
- Java集合中那些类是线程安全的 以及 Map线程安全几种实现方法
- Centos下安装Oracle问题
- 二叉树的最大深度
- React-Native中ListView 多选,单选
- 使用multimaster进行多台电脑通讯
- 5.1.I/O设备及其分类