WEB开发网
开发学院WEB开发Jsp JSP实现MySQL数据结构查询 阅读

JSP实现MySQL数据结构查询

 2009-10-08 16:35:27 来源:WEB开发网   
核心提示:流程简介: login use describe 登录<--->选择数据库<->选择表<-->显示表结构 logout back back 0.数据库处理的javabean:(我厚道吧,这都贴出来了) MySQLmeans.java(位置:MySQL/mysqlme

流程简介:

               login                 use           describe

         登录<----------->选择数据库<--------->选择表<---------->显示表结构

               logout                back            back

0.数据库处理的javabean:(我厚道吧,这都贴出来了)

MySQLmeans.java(位置:MySQL/mysqlmeans.java):

package MySQL;
import java.sql.*;
/**
 *
 * @author lucifer
 */

public class mysqlmeans {
   Connection con;
   String username = "";
   String passWord = "";
   String server = "";
   String dbname = "";
   public void setPRoperties(String serv,String db,String name,String pass){
      server = serv;
      dbname = db;
      username = name;
      password = pass;
   }

public void setUserName(String username){
      this.username = username;
   }
   public String getUserName(){
      return username;
   }

public void setPassword(String password){
      this.password = password;
   }
   public String getPassword(){
      return password;
   }

public void setServer(String server){
      this.server = server;
   }
   public String getServer(){
      return server;
   }

public void setDataBase(String daname){
      this.dbname = daname;
   }
   public String getDataBase(){
      return dbname;
   }

public Connection getConnection(){
     try{
       Class.forName("com.mysql.jdbc.Driver");
       con = DriverManager.getConnection
            ("jdbc:mysql://"+server+"/"+dbname+"?user="+username+"&password="+password, username, password);
       return con;
     }catch(Exception e){
       e.printStackTrace();
       return null;
     }
   }

   public void exeUpdate(String sql){
     Connection upCon = getConnection();
     try{
       Statement stmt = upCon.createStatement();
       stmt.executeUpdate(sql);
       stmt.close();
       upCon.close();
     }catch(Exception e){
       e.printStackTrace();
     }
   }

   public ResultSet getResult(String sql){
     ResultSet rs = null;
     try{
       Statement stmt = con.createStatement
            (ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
       rs = stmt.executeQuery(sql);
     }catch(Exception e){
       e.printStackTrace();
     }
     return rs;
   }

   public void closeConnection(){
     try{
       con.close();
     }catch(Exception e){
       e.printStackTrace();
     }
   }

   public void closeResultSet(ResultSet rs){
     try{
       rs.close();
     }catch(Exception e){
       e.printStackTrace();
     }
   }

   public void closeStatement(Statement stmt){
     try{
       stmt.close();
     }catch(Exception e){
       e.printStackTrace();
     }
   }

}


1.登录:

login.jsp:

<%--
   Document  : choose
   Created on : 2009-10-5, 19:07:36
   Author   : lucifer
--%>

<%@page contentType="text/html" pageEncoding="UTF-8" errorPage="login_error.jsp"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">

<html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>登录</title>
   </head>
   <body bgcolor="#c0c0c0">
     <center>
        <font face="楷体" size="+3">
          Sir_LuciFer<br>数据库查询系统
        </font>
        <br><br>
        <form method="post" action="chooseDataBase.jsp" name="form">
        <B>
        服务器:
        <input type="text" name="server" value="localhost"><br>
        用户名:
        <input type="text" name="username" value="root"><br>
        密码:
        <input type="password" name="password"><br>
        <input type="submit" value="Login!">
        </B>
     </form>
     </center>
   </body>
</html>
http://www.cncms.com/

2.选择要使用的数据库:

chooseDataBase.jsp:

<%--
   Document  : choose
   Created on : 2009-10-5, 19:07:36
   Author   : lucifer
--%>

<%@page contentType="text/html" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="mysql" class="MySQL.mysqlmeans"/>
<html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>选择数据库</title>
     <script type="text/Javascript">
       function getDataBase(){
          alert(document.getElementById("db").value)
       }
     </script>
   </head>
   <%
      String user = request.getParameter("username");
      String pass = request.getParameter("password");
      String serv = request.getParameter("server");
      mysql.setUserName(user);
      mysql.setPassword(pass);
      mysql.setServer(serv);
      String sql = "show databases";

    mysql.getConnection();
      ResultSet rs = mysql.getResult(sql);
   %>

   <body bgcolor="#c0c0c0">
     <center>
     <table border="1px">
        <tr>
          <td>
             数据库:
          </td>
        </tr>
        <%
           while(rs.next()){%>
           <tr>
           <td>
             <%=rs.getString("Database")%>
           </td>
             </tr>
           <%
           }
           mysql.closeResultSet(rs);
           mysql.closeConnection();
         %>
     </table>
     <form method="post" action="chooseTable.jsp" name="form">
        <B>
        请选择数据库名称:
        </B>
        <input type="text" name="database" value="test"><br>            
        <input type="hidden" name="username" value="<%=user%>">
        <input type="hidden" name="password" value="<%=pass%>">
        <input type="hidden" name="server" value="<%=serv%>">
        <input type="submit" value="USE!">
     </form>
     <form method="post" action="login.jsp">
          <input type="submit" value="Logout!">
     </form>
     </center>
   </body>
</html>

3.选择表并看其结构:

chooseTable.jsp:

<%--
   Document  : chooseTable
   Created on : 2009-10-5, 19:19:37
   Author   : lucifer
--%>

<%@page contentType="text/html" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="mysql" class="MySQL.mysqlmeans"/>
<%
      String user = request.getParameter("username");
      String pass = request.getParameter("password");
      String serv = request.getParameter("server");
      String dbname = request.getParameter("database");
      mysql.setUserName(user);
      mysql.setPassword(pass);
      mysql.setServer(serv);
      mysql.setDataBase(dbname);
      String sql = "show tables";

    mysql.getConnection();
      ResultSet rs = mysql.getResult(sql);

%>
<html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>选择表</title>
   </head>
   <body bgcolor="#c0c0c0">
     <center>
     <table border="1px">
        <tr>
          <td>
             表:
          </td>
        </tr>
        <%
           while(rs.next()){%>
           <tr>
           <td>
             <%=rs.getString("Tables_in_" + dbname)%>
           </td>
             </tr>
           <%
           }
         %>
     </table>
     <form method="post" action="describeTable.jsp" name="form2">
        <B>请选择一个表:
        <input type="text" name="table">
        <input type="hidden" name="username" value="<%=user%>">
        <input type="hidden" name="password" value="<%=pass%>">
        <input type="hidden" name="server" value="<%=serv%>">
        <input type="hidden" name="database" value="<%=dbname%>">
        <br>
        <input type="submit" value="DESCRIBE!">
        </B>
     </form>


     <form method="post" action="chooseDataBase.jsp" name="form1">
        <B>
        <input type="hidden" name="username" value="<%=user%>">
        <input type="hidden" name="password" value="<%=pass%>">
        <input type="hidden" name="server" value="<%=serv%>">
        <input type="submit" value="BACK!">
        </B>
     </form>
     </center>
   </body>
</html>


4.描述表:

describeTable.jsp:

<%--
   Document  : describeTable
   Created on : 2009-10-6, 19:49:26
   Author   : lucifer
--%>

<%@page contentType="text/html" pageEncoding="UTF-8" import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="mysql" class="MySQL.mysqlmeans"/>
<html>
   <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>Describe table <%=request.getParameter("table")%></title>
   </head>
   <%
   String serv = request.getParameter("server");
   String user = request.getParameter("username");
   String pass = request.getParameter("password");
   String dbname = request.getParameter("database");
   String tname = request.getParameter("table");
   mysql.setServer(serv);
   mysql.setUserName(user);
   mysql.setPassword(pass);
   mysql.setDataBase(dbname);
   String sql = "describe " + tname;
  
   mysql.getConnection();
   ResultSet rs = mysql.getResult(sql);

   %>
   <body bgcolor="#c0c0c0">
     <center>
     <table border="1px">
        <tr>
          <td>
             Field
          </td>
          <td>
             Type
          </td>
          <td>
             Null
          </td>
          <td>
             Key
          </td>
          <td>
             Default
          </td>
          <td>
             Extra
          </td>
        </tr>
        <%
           while(rs.next()){
          %>
             <tr>
                <td>
                  <%=rs.getString("Field")%>
                </td>
                <td>
                  <%=rs.getString("Type")%>
                </td>
                <td>
                  <%=rs.getString("Null")%>
                </td>
                <td>
                  <%=rs.getString("Key")%>
                </td>
                <td>
                  <%=rs.getString("Default")%>
                </td>
                <td>
                  <%=rs.getString("Extra")%>
                </td>
             </tr>
       <%
           }
        %>
     </table>
     <form method="post" action="chooseTable.jsp">
        <input type="hidden" name="username" value="<%=user%>">
        <input type="hidden" name="password" value="<%=pass%>">
        <input type="hidden" name="server" value="<%=serv%>">
        <input type="hidden" name="database" value="<%=dbname%>">
        <input type="submit" value="BACK!">
     </form>
     </center>
   </body>
</html>

Tags:JSP 实现 MySQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接