利用VELICITY模板动态生成XML
2011-06-24 19:57
471 查看
private String getCCAUXmlValue(String policyNo, TripInsuranceInfo tripInsuranceInfo) { String xmlValue = ""; // 获取VELOCITY ENGINE的框架引擎 VelocityEngine ve = new VelocityEngine(); // 获取根路径 String path = System.getProperty("user.dir"); System.out.println(path); path = path + "//vm"; // VE引擎设置PATH地址 ve.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path); // 处理中文问题 ve.setProperty(Velocity.INPUT_ENCODING, "utf-8"); ve.setProperty(Velocity.OUTPUT_ENCODING, "utf-8"); // 引擎初始化 try { ve.init(); Template template = ve.getTemplate("cpicmobile_JAX.vm"); // 获取上下文 VelocityContext root = new VelocityContext(); // 把数据填入上下文 root.put("tbrxm", StringUtil.null2Str(tripInsuranceInfo.getApplierName()));// 投保人姓名 root.put("telephone", StringUtil.null2Str(tripInsuranceInfo.getApplierTelNo()));// 联系电话 root.put("bbxrmc", StringUtil.null2Str(tripInsuranceInfo.getInsuredName()));// 被保险人 root.put("address", "test");// 诉讼/仲裁地点 root.put("zjhm", StringUtil.null2Str(tripInsuranceInfo.getInsuredCardNo()));// 身份证号码 root.put("agentName", "test");// 代理机构 root.put("bdh", StringUtil.null2Str(tripInsuranceInfo.getPolicyNo()));// 保单号 root.put("zhongcai", "false");// 仲裁 root.put("zbsj", StringUtil.null2Str(tripInsuranceInfo.getEndDate()));// 截至时间 root.put("lsh", "test");// 流水号 root.put("syrmcone", "test");// 受益人 root.put("qbsj", StringUtil.null2Str(tripInsuranceInfo.getStartDate()));// 起保时间 root.put("susong", "false");// 诉讼 root.put("qdrq", "2011-05-10");// 签单日期 root.put("handlername", "");// 经办人员 root.put("name", "test");// 诉讼/仲裁名称 root.put("unitname", StringUtil.null2Str(tripInsuranceInfo .getBranchCompanyName()));// 分公司 root.put("policyPremiumCh", StringUtil.null2Str(tripInsuranceInfo.getPremiumAmount()));// root.put("policyPremium", StringUtil.null2Str(tripInsuranceInfo.getPremiumAmount()));// // 获取模板的字符串 StringWriter wt = new StringWriter(); template.merge(root, wt); wt.flush(); xmlValue = wt.getBuffer().toString(); // System.out.print("wt.getBuffer().toString()"+wt.getBuffer().toString()); System.out.print("wt.getBuffer().toString()" + wt.getBuffer().toString()); } catch (Exception e) { e.printStackTrace(); } return xmlValue; }
模板
<?xml version="1.0" encoding="UTF-8"?> <report xmlns="http://www.cpic.com.cn/epolicy/reportservice" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.cpic.com.cn/epolicy/reportservice report.xsd"> <parameters> <element name="tbrxm" type="Stirng"><!--[CDATA[$tbrxm]]></element> <element name="telephone" type="Stirng"><![CDATA[$telephone]]></element> <element name="bbxrmc" type="Stirng"><![CDATA[$bbxrmc]]></element> <element name="address" type="Stirng"><![CDATA[$address]]></element> <element name="zjhm" type="Stirng"><![CDATA[$zjhm]]></element> <element name="agentName" type="Stirng"><![CDATA[$agentName]]></element> <element name="bdh" type="Stirng"><![CDATA[$bdh]]></element> <element name="zhongcai" type="Stirng"><![CDATA[$zhongcai]]></element> <element name="zbsj" type="Stirng"><![CDATA[$zbsj]]></element> <element name="lsh" type="Stirng"><![CDATA[$lsh]]></element> <element name="syrmcone" type="Stirng"><![CDATA[$syrmcone]]></element> <element name="qbsj" type="Stirng"><![CDATA[$qbsj]]></element> <element name="susong" type="Stirng"><![CDATA[$susong]]></element> <element name="qdrq" type="Stirng"><![CDATA[$qdrq]]></element> <element name="handlername" type="Stirng"><![CDATA[$handlername]]></element> <element name="name" type="Stirng"><![CDATA[$name]]></element> <element name="unitname" type="Stirng"><![CDATA[$unitname]]></element> <element name="policyPremiumCh" type="Stirng"><![CDATA[$policyPremiumCh]]></element> <element name="policyPremium" type="Stirng"><![CDATA[$policyPremium]]--></element> </parameters> </report>
利用VELICITY模板动态生成XML
相关文章推荐
- 利用freemarker 在模板里面写入动态数据,动态表格,图片插入并生成word文档
- C# 利用xml动态生成带图标菜单
- Java Web项目中利用FreeMarker模板生成的word文档,其它格式文档同理,如pdf,txt,java,xml等等
- 利用Itext中table动态生成PDF模板
- asp.net中利用XML描述文件和Excel模板相结合的方法生成Excel报表
- [网络收集]读取XML 利用TreeView控件动态生成无限级树
- Silverlight实用窍门系列:9.动态生成实体类,根据XML模板使用Emit生成动态类绑定到DataGrid【附代实例源码】
- 9.动态生成实体类,根据XML模板使用Emit生成动态类绑定到DataGrid
- Java Web项目中利用FreeMarker模板生成的word文档,其它格式文档同理,如pdf,txt,java,xml等等
- 利用XML动态生成ASPX页面
- 利用freemarker 在模板里面写入动态数据,动态表格,图片插入并生成word文档
- silverlight DataGrid模板列的动态生成
- ASP 中利用OWC 服务器端组件动态生成图表
- 利用jquery对动态生成的文本进行求和计算
- Unity 动态生成 xml文档
- 动态生成DataGrid的模板列
- C# 利用自带xsd.exe工具操作XML-如通过XML生成xsd文件
- 根据html页面模板动态生成html页面(c#类)
- 使用Python读取TestTrack记录- Part3 动态生成Linq to xml查询语句筛选条件
- 跟据XML 动态生成菜单