我要啦免费统计

          微藍(lán)領(lǐng)域

          我的學(xué)習(xí)檔案館
          posts - 19, comments - 57, trackbacks - 0, articles - 57
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
          主要原理請(qǐng)參考http://blog.hunan2s.com/article.asp?id=233

          經(jīng)過(guò)一翻調(diào)試,成功了。。呵

          附上源碼。。


          JDK 1.5 +ECLIPSE +TOMCAT 5.0.28 + MYSQL 5.0 

          數(shù)據(jù)庫(kù)TEST ,表名news 
          字段: id   int 自動(dòng)增長(zhǎng) , Title  varchar(20) , Content  varchar(200)  , Author  varchar(10) 

          makeFile.jsp

           <%
            Connection conn = DBconn.getConnection();
            Statement stmt = conn.createStatement();
            ResultSet Rs = stmt.executeQuery("select * from news");
            System.out.println("success");

           %>
           
            <%
            
            String filePath = request.getRealPath("/")+"template.htm";

            System.out.println(filePath);
            
            String templateContent;
            FileInputStream fileinputstream = new FileInputStream(filePath);
            int lenght = fileinputstream.available(); //available() 返回可以不受阻塞地從此文件輸入流中讀取的字節(jié)數(shù)。
            
          byte bytes[] = new byte[lenght];

          fileinputstream.read(bytes); //read(byte[] b) 從此輸入流中將最多 b.length 個(gè)字節(jié)的數(shù)據(jù)讀入一個(gè)字節(jié)數(shù)組中。

          fileinputstream.close();
          //templateContent = new String(bytes);
          String title;
          String content;
          String author;
          while(Rs.next())
          {
          templateContent = new String(bytes);//如果不用這句,則替換一次之后,templateContent中就沒(méi)有#**#標(biāo)志了。所以要重新生成
           title = Rs.getString("Title");
           content = Rs.getString("Content");
           author = Rs.getString("Author");
          out.println(title+"********"+content+"****"+author);
          out.print("以下是模板內(nèi)容:<br>"+templateContent+"<br> 以下是置換以后的html內(nèi)容<br><hr>");
          templateContent=templateContent.replaceAll("#title#",title);
          templateContent=templateContent.replaceAll("#author#",author);//替換掉模塊中相應(yīng)的地方
          templateContent=templateContent.replaceAll("#content#",content);

          // 根據(jù)時(shí)間得文件名
          Calendar calendar = Calendar.getInstance();
          String fileame = String.valueOf(calendar.getTimeInMillis()) +".html";
          fileame = request.getRealPath("/")+"Html/"+fileame;//生成的html文件保存路徑


          out.print(templateContent);
          FileOutputStream fileoutputstream = new FileOutputStream(fileame);//建立文件輸出流
          byte tag_bytes[] = templateContent.getBytes();
          fileoutputstream.write(tag_bytes);
          fileoutputstream.close();

          }

          if(conn!=null)
              {
                  conn.close();
              }
              if(stmt!=null)
              {
                  stmt.close();
              }


            
            %>

          //數(shù)據(jù)庫(kù)連接文件

          import java.sql.*;
          public class DBconn {
              
              public DBconn() {
                  
                  // TODO Auto-generated constructor stub
              }

              public static Connection getConnection() 
              {
                  Connection conn = null;
                  
                  try { 
                      Class.forName("org.gjt.mm.mysql.Driver"); 
                      conn = DriverManager.getConnection("jdbc:mysql://" + "localhost" + "/" + "test" +
                  "?useUnicode=true&characterEncoding=GB2312","root","111111"); 
                          
                  }
                  catch(Exception e)
                  {
                      e.printStackTrace();
                  }
                  return conn;
                  }
              /*public static void main(String[] args) throws Exception
              {
                  Connection con=getConnection();
                  System.out.println(con.isClosed());
                  
              }
          */
          }



          // 模板文件

          template.htm
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html xmlns="http://www.w3.org/1999/xhtml">
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
          <title>#title#</title>
          </head>

          <body>
          <table width="380" height="107" border="0" cellpadding="0" cellspacing="1" bgcolor="#FFCC99">
            <tr>
              <td height="16" bgcolor="#FFCC99"><div align="center">#title#</div></td>
            </tr>
            <tr>
              <td bgcolor="#FFFFFF">#content#</td>
            </tr>
            <tr>
              <td height="13" align="right" bgcolor="#FFFFFF">#author#</td>
            </tr>
          </table>
          </body>
          </html>
          主站蜘蛛池模板: 贡觉县| 丹巴县| 丽水市| 申扎县| 资中县| 徐水县| 益阳市| 禄丰县| 贞丰县| 南溪县| 沾化县| 宁国市| 体育| 罗江县| 且末县| 乐安县| 清水河县| 凤山市| 犍为县| 阳曲县| 河池市| 句容市| 隆德县| 云和县| 澄迈县| 武威市| 射阳县| 安徽省| 台山市| 彭州市| 叶城县| 西乡县| 佳木斯市| 莒南县| 垫江县| 武城县| 芜湖县| 盖州市| 道真| 临邑县| 七台河市|