Home| New Wiki | | Login | User registry | Home Tree PDF
Isql Jsp
Owner:csilva, Version: 1, Date:Thu 27, October 2005,

A webpage able to execute querys and updates to an internal database is always usefull....

Listing 1: isql.jsp

<HTML>
<HEAD>
  <TITLE>_ISQL</TITLE>
  <STYLE>
  body {
    font-family: Verdana, Arial;
    background: #eee
  }
  h1 {
    color: #444444;
    background: #cdc
  }
  h2 {
    color: #888888;
    background: #eef
  }  
  td {
    background: #ffffff
  }
  th {
    background: #e0e0f0
  }
  .resultTable {
    border-width: 1px;
    border-style: solid;
    border-color: #208080;
    font-size: x-small
  }
  
  </STYLE>
</HEAD>
<BODY>
<jsp:useBean id="recent" class="java.util.Vector" scope="session"/>
<%
  String sql   = request.getParameter("sql");
  if (sql==null)
    sql="";
%>
<H1>ISQL (<%=request.getServerName()%>) </H1>
<FORM METHOD="GET" ACTION="ou812.jsp">
<TABLE border="0" class="resultTable">
    <TBODY>
        <TR>
            <TD>SQL</TD>
            <TD><textarea rows="6" cols="60" name="sql"><%=sql%></textarea></TD>
        </TR>                
        <TR>
            <TD></TD>
            <TD><INPUT type="submit" name="Enviar"></TD>
        </TR>
         <TR>
            <TD>Recent</TD>
            <TD><SELECT name="recentList" onChange="sql.value=recentList.value;">
            <OPTION value="">(Recent)</OPTION>
            <%for (int i =0; i< recent.size();i++) {%>
            <OPTION value="<%=recent.elementAt(i)%>"><%=recent.elementAt(i)%></OPTION><%}%>
        </SELECT></TD>
        </TR>
    </TBODY>
</TABLE>
</FORM> 
<% 
if ((sql!=null)&&(!"".equals(sql.trim()))) {
  
  //javax.naming.InitialContext initialContext = new javax.naming.InitialContext();
  //javax.sql.DataSource dataSource = (javax.sql.DataSource)initialContext.lookup(jndi);
  //java.sql.Connection conn = dataSource.getConnection();
  Class.forName(application.getInitParameter("dbdrv"));
  java.sql.Connection conn = java.sql.DriverManager.getConnection(
       application.getInitParameter("dburl"),
       application.getInitParameter("dbusr"),
       application.getInitParameter("dbpwd"));

  long t1 = System.currentTimeMillis();
  java.sql.Statement st = conn.createStatement();

  int filas = 0;
  java.sql.ResultSet rs =null;
  if (sql.toLowerCase().trim().startsWith("select")) {
    rs = st.executeQuery(sql);
    java.sql.ResultSetMetaData rsmd = rs.getMetaData();
  %>
<H2>Resultado</H2>
<table border="0" class="resultTable">
  <tr>
    <%for (int i=1; i<=rsmd.getColumnCount();i++){%>
    <th><%=rsmd.getColumnName(i)%><br/>
        <%=rsmd.getColumnTypeName(i)%></th> <%}%>
  </tr>
  
  
  <%while (rs.next()){ filas++; %>
  <tr>
    <%for (int i=1; i<=rsmd.getColumnCount();i++){%>
    <td><%=rs.getObject(i)%></td><%}%>
  </tr>    
  <%}
    rs.close();
  }else{
    filas= st.executeUpdate(sql);
  }
  
  if (!recent.contains(sql))
    recent.add(sql);
  
  st.close();
  long t2 = System.currentTimeMillis();
  conn.close();
%>
</table>
<p><i><%=filas%> filas en <%=(t2-t1)%>ms</i></p>
<%}// (sql!=null)%>
<hr>
<address>_isql.jsp, Carlos Silva A. 2005.</address>
</BODY>
</HTML>


Edit - History - Extract PDF - Extract Tree as PDF

Last Modified

Thu, Nov 19 Sat, Oct 3 Fri, Sep 25 Mon, Aug 3 Mon, Apr 27 Sat, Mar 28 Mon, Jan 19 Tue, Jan 6

Home| New Wiki