Java tutorial
import java.io.IOException; import java.sql.Clob; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class DisplayClobServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { Clob fileAsCLOB = null; Connection conn = null; Statement stmt = null; ResultSet rs = null; String id = "001"; String query = "select fileBody from DataFiles where id = " + id; ServletOutputStream out = response.getOutputStream(); // all responses will be in text/html format response.setContentType("text/html"); try { conn = getHSQLConnection(); } catch (Exception e) { out.println("<html><head><title>CLOB Example</title></head>"); out.println("<body><h4>Database Connection Problem.</h4>"); out.println("<h5>" + e.getMessage() + "</h5></body></html>"); return; } try { stmt = conn.createStatement(); rs = stmt.executeQuery(query); if (rs.next()) { fileAsCLOB = rs.getClob(1); } else { out.println("<html><head><title>CLOB Example</title></head>"); out.println("<body><h4>No file found for id=" + id + "</h4></body></html>"); return; } // Materialize the CLOB as a String object (get the whole clob). long length = fileAsCLOB.length(); // note that the first character is at position 1 String fileAsString = fileAsCLOB.getSubString(1, (int) length); // write it for display out.println(fileAsString); System.out.println("CLOB writing done."); } catch (SQLException e) { out.println("<html><head><title>Error: CLOB Example</title></head>"); out.println("<body><h4>Error=" + e.getMessage() + "</h4></body></html>"); return; } finally { try { rs.close(); stmt.close(); conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } private static Connection getHSQLConnection() throws Exception { Class.forName("org.hsqldb.jdbcDriver"); System.out.println("Driver Loaded."); String url = "jdbc:hsqldb:data/tutorial"; return DriverManager.getConnection(url, "sa", ""); } public static Connection getMySqlConnection() throws Exception { String driver = "org.gjt.mm.mysql.Driver"; String url = "jdbc:mysql://localhost/demo2s"; String username = "oost"; String password = "oost"; Class.forName(driver); Connection conn = DriverManager.getConnection(url, username, password); return conn; } public static Connection getOracleConnection() throws Exception { String driver = "oracle.jdbc.driver.OracleDriver"; String url = "jdbc:oracle:thin:@localhost:1521:databaseName"; String username = "username"; String password = "password"; Class.forName(driver); // load Oracle driver Connection conn = DriverManager.getConnection(url, username, password); return conn; } }