java通过freemark生成通用的网页书签

需求

这里写图片描述
想右键打开想要的网页,而不是一个一个慢慢打开。因此想做个bookmarkers书签。

实现

后端

Configuration cc = new Configuration();
        cc.setDirectoryForTemplateLoading(new File(TEMPLATEFILE));
        Map root = new HashMap();
        root.put("list", list);
        System.out.println("===="+list.size());
        System.out.println(list.get(0).getWebtype());
        Template template = cc.getTemplate(TEMPLATEFILENAME);
        template.setEncoding("UTF-8");
        Writer out = new OutputStreamWriter(System.out,"UTF-8");
        template.process(root, out);
        File fileDir = new File(SAVEDIR);
        FileUtils.forceMkdir(fileDir);
        File output = new File((new StringBuilder()).append(fileDir).append(SAVEFILE).toString());
//      Writer writer = new FileWriter(output);
         Writer writer = new BufferedWriter(
                 new OutputStreamWriter(new FileOutputStream(output),"UTF-8"));  
        template.process(root, writer);
        writer.close();
        out.flush();
        out.close();

前端 ftl文件

<!DOCTYPE NETSCAPE-Bookmark-file-1>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<TITLE>Bookmarks</TITLE>
<H1>Bookmarks</H1>
<DL><p>
    <DT><H3 ADD_DATE="1477118590" LAST_MODIFIED="1486200186" PERSONAL_TOOLBAR_FOLDER="true">收藏栏</H3>
    <DL><p>             
<#list list as webSite>  
    <DT><H3 ADD_DATE="1486200186" LAST_MODIFIED="1486200195">${webSite.webtype}</H3>
        <DL><p>
            <#list webSite.web as web>  
        <DT><A HREF="${web.weburl}" ADD_DATE="1486200195" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAc0lEQVQ4jWNgGGjAiMYPJ6B+JboAC7rAy5cvV6CLiYuLR/z//38FIyMjhiFMhB2JAP///1+B7koMF/Dy8hI0BNklGAZgAxcuXFjByMgYgU2OKAPU1NQYvn37Bg8bLi4uuGEkhQE2MGoAFQzAiEbkKKILAADxTRpEuhAmjwAAAABJRU5ErkJggg==">${web.webname}</A>
        </#list> 
    </DL><p>
</#list>        
    </DL><p>
</DL><p>

分析

1、书签的格式是
——type
————name
————url
2、freemark生成html文件乱码问题
template.setEncoding(“UTF-8”);
Writer writer = new BufferedWriter(
new OutputStreamWriter(new FileOutputStream(output),”UTF-8”));

全CSDN的丰(好)色(se)博客,这里有书本看不到的Java技术,电影院禁播的电影,欢迎关注QQ群494808400
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值