Generating static pages with JSP

Time:2021-10-27

Please refer to the main principlehttp://blog.hunan2s.com/article.asp?id=233

After a turn of debugging, it succeeded.. Oh

Attach the source code..

JDK 1.5 +ECLIPSE +TOMCAT 5.0.28 + MYSQL 5.0 

Database test, table name news  
Field: ID     int   Automatic growth,   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()   Returns the number of bytes that can be read from this file input stream without blocking.

byte bytes[] = new byte[lenght];

fileinputstream.read(bytes);  // read(byte[]   b)   The maximum number of entries from this input stream   b.length   Bytes of data are read into a byte array.

fileinputstream.close();
//templateContent = new String(bytes);
String title;
String content;
String author;
while(Rs.next())
{
templateContent  =  new   String(bytes);// If this sentence is not used, there will be no #* * # flag in the templatecontent after replacement. So we need to regenerate
 title = Rs.getString(“Title”);
 content = Rs.getString(“Content”);
 author = Rs.getString(“Author”);
out.println(title+”********”+content+”****”+author);
Out. Print (“the following is the template content: < br >” + templatecontent + “< br >   The following is the HTML content after replacement (< br > < HR > “);
templateContent=templateContent.replaceAll(“#title#”,title);
templateContent=templateContent.replaceAll(“#author#”,author);// Replace the corresponding place in the module
templateContent=templateContent.replaceAll(“#content#”,content);

//   File name by time
Calendar calendar = Calendar.getInstance();
String fileame = String.valueOf(calendar.getTimeInMillis()) +”.html”;
fileame  =  request.getRealPath(“/”)+”Html/”+fileame;// Save path of generated HTML file

out.print(templateContent);
FileOutputStream   fileoutputstream  =  new   FileOutputStream(fileame);// Create file output stream
byte tag_bytes[] = templateContent.getBytes();
fileoutputstream.write(tag_bytes);
fileoutputstream.close();

}

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

  %>

//Database connection file

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 file

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>

Recommended Today

The 50 MySQL interview questions, Ali’s interviewer called the expert (Part 1)

preface As for the so-called golden, silver and four, friends who want to change jobs to big factories should also be actively preparing for this period of time. Mysql, as one of the most popular relational database management systems, probably does not need me to say more about its importance. It is almost necessary to […]