<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    lizongbo 的 編程學習

    http://618119.com

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      23 Posts :: 1 Stories :: 78 Comments :: 0 Trackbacks

    由于原有模板是以.htm方式存在的,
    在轉換成jsp方式時,對其中很多通用的代碼,可以通過替換的方式直接轉換為jstl語法的.
    步驟如下:

    1.首先將所有的htm文件名替換成jsp,
    在命令行下運行 rename *.htm *.jsp即可.

    2.將bbs\forumdata\cache\style_1.php中的css變量TABLEWIDTH等,
    替換成類似${crtStyles['TABLEWIDTH']}的jstl語法.
    全部只能手工替換

    3.將*.jsp中的{lang forum_favorite}等替換成類似 <fmt:message key="faq" bundle="${forum_favorite}"/>
    使用正則表達式進行替換:
    editplus中的 查找內容為: {lang (.+)},替換內容為:<fmt:message key="faq" bundle="${\1}"/>
    Jbuilder中的查找內容為 \{lang (.+)\},Pattern為:Regular Expressions,
    替換內容為:(暫時未寫出來,打算寫程序進行替換操作)

    用java程序替換的核心代碼為:

     //替換樣式變量
                 content = content.replaceAll("FORMHASH", "formhash");
                 //替換樣式變量 ${crtStyle['TABLEWIDTH']}
           content = content.replaceAll("\\{([A-Z0-9]+)\\}", "\\${crtStyle\\['$1'\\]}");
                 //替換國際化定義
                 //content = content.replaceAll("\\{lang (.+?)\\}",
                 //                             "<fmt:message key=\"$1\" bundle=\"\\$\\{templates\\}\"/>");
                 //對標簽屬性里的值暫時不替換
                 content = content.replaceAll("([^\"])\\{lang (.+?)\\}",
           "$1<fmt:message key=\"$2\" bundle=\"\\$\\{templates\\}\"/>");

                 //替換單層的屬性訪問
                 content = content.replaceAll("\\$([a-z]+?)\\[([a-z]+?)\\]",
                                       "\\$\\{$1\\['$2'\\]\\}");
                 //替換標題部分的聲明
                 content = content.replaceAll("\\{template header\\}",
                                       "<%@page pageEncoding=\"UTF-8\" " +
                                       "contentType=\"text/html;" +
                                       " charset=UTF-8\"%>\n"
                                       + "<%@include file=\"/WEB-INF/" +
                                       "inc/taglibs.jspf\"%>\n" +
                                       "<jsp:include flush=\"true\" " +
                                       "page=\"header.jsp\"/>\n");
                 ////替換底部部分的聲明
                 content = content.replaceAll("\\{template footer\\}",
                                       "\n<jsp:include flush=\"true\" " +
                                       "page=\"footer.jsp\"/>");

                 //替換其它引用聲明
                 content = content.replaceAll("\\{template (.+?)\\}",
                                       "\n<jsp:include flush=\"true\" " +
                                       "page=\"$1.jsp\"/>");
                 //替換url定義
           content = content.replaceAll("\\$indexname", "\\${settings.indexname}");
                 //替換網站名字
                 content = content.replaceAll("\\$bbname", "\\${settings.bbname}");
                 //替換導航標簽
                 content = content.replaceAll("\\$navigation", "\\${navigation}");
                 //替換一些變量
                 //content = content.replaceAll("\\$pid", "\\${pid}");
           content = content.replaceAll("\\$([a-z_]+)(\"|<|\\))", "\\${$1}$2");

    posted on 2007-08-29 09:42 lizongbo 的編程學習 閱讀(759) 評論(1)  編輯  收藏 所屬分類: java discuz
    主站蜘蛛池模板: 国产亚洲精品欧洲在线观看| 在线观看免费人成视频| 亚洲sm另类一区二区三区| 亚洲AV乱码久久精品蜜桃 | 亚洲VA成无码人在线观看天堂| 成年女人免费视频播放77777| 午夜不卡久久精品无码免费| 九九久久国产精品免费热6| 亚洲AV色无码乱码在线观看| 亚洲大尺码专区影院| 亚洲欧洲日产国码久在线观看 | 特级毛片免费播放| 亚洲色偷偷综合亚洲av78| 亚洲不卡视频在线观看| 亚洲最大成人网色| 亚洲精品无码mv在线观看网站| 亚洲精品高清在线| 亚洲精品A在线观看| 成人免费无码精品国产电影| 毛片免费视频观看| 免费a级毛片高清视频不卡 | 亚洲国产av一区二区三区丶| 久久精品亚洲精品国产色婷| 亚洲av丰满熟妇在线播放| 亚洲精品无码精品mV在线观看| 不卡精品国产_亚洲人成在线| 免费v片视频在线观看视频| 国产特级淫片免费看| 精品国产免费观看一区| 爽爽日本在线视频免费| 午夜免费福利网站| 国产成人高清精品免费软件| 成在线人永久免费视频播放| 日本无卡码免费一区二区三区| 午夜寂寞在线一级观看免费| 国产jizzjizz视频全部免费| 国产a不卡片精品免费观看| 亚洲av成人一区二区三区在线观看| 亚洲高清视频一视频二视频三| 亚洲精品成人久久久| 亚洲一区二区三区无码中文字幕 |