freemaker 创建HTML文件

/**
	 * 创建目录
	 * @param path
	 * @return
	 */
	private static boolean creatFolder(String path) {    
		File folder = new File(path);    
		if (!folder.exists()) {    
			return folder.mkdirs();    
		} else {    
			return true;    
		}    
	}

	/**
	 * 获取freemaker配置
	 * @param template
	 * @return
	 */
	private static Configuration initialConfiguration() {  
		if (null == HTMLUtil.config) {    
			HTMLUtil.config = new Configuration();    
			try {    
//				HTMLUtil.config.setDirectoryForTemplateLoading(new File(template));    
				HTMLUtil.config.setClassForTemplateLoading(HTMLUtil.class, "/template");  
				//template文件夹存放模板,并将文件夹放在classpath下面
			} catch (Exception e) {    
				e.printStackTrace();
			}    
		}    
		return HTMLUtil.config;    
	} 

	public static boolean createFileByTemplate(String filePath, String fileName, Map<String, Object> fileContent){
		createFileByTemplate(filePath, fileName, fileContent, "article.ftl");
		return true;
	}
	/**
	 * 使用freemaker创建HTML
	 * @param filePath 文件保存地址
	 * @param fileName 文件名
	 * @param fileContent 文件内容
	 * @param template 模板地址
	 * @return
	 */
	public static boolean createFileByTemplate(String filePath, String fileName, Map<String, Object> fileContent, String templateName){
		Template template;
		try {
			template = HTMLUtil.initialConfiguration().getTemplate(templateName);
			// 如果根路径存在,则递归创建子目录    
			HTMLUtil.creatFolder(filePath);
			File file = new File(filePath + fileName);    
			
			Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));    
			
			template.process(fileContent, out);    
			out.flush();    
			out.close();
			
		} catch (IOException e) {
			e.printStackTrace();
		} catch (TemplateException e) {
			e.printStackTrace();
		}    

		return true;
	}
	
	public static void main(String[] args) {
		Map<String,Object> map = new HashMap<String, Object>();
		map.put("title", "world");
		map.put("serverPath", "world");
		map.put("content", "world");
		createFileByTemplate("D:/html/article/","test1.html",map);
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值