JSP连接MySQL数据库问题

  • 来源: 龙腾软件教程网 作者: 若水   2008-05-10/00:54
  • 当您面临JSP连接MySQL数据库问题,你首先需要在MySQL数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。

     

    以下用两种方式来实现JSP连接MySql数据库

     

    第一种方式,用JSP实现:

     

    <%@ page contentType="text/html; 
    charset=gb2312" language="java" 
     import="java.sql.*"%>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <%//*******************************
    **************** 
     JDBC_ODBC连接MySql数据库,不需要设置数据源***********
    **********************/  
     //********** 数据库连接代码开始 ******/   
    //以下几项请自行修改String server="localhost";        
    //MYSQL 服务器的地址String dbname="test";           
     //MYSQL 数据库的名字String user="root";                
    //MYSQL 数据库的登录用户名String pass="chfanwsp";            
    //MYSQL 数据库的登录密码String port="3306";    
    //SQL Server 服务器的端口号,
    默认为1433//数据库连接字符串
     String url ="jdbc:mysql://"+server+":"+port+"/"+dbname+"?
    user="+user+"&passWord="+pass+"&useUnicode
    =true&characterEncoding=GB2312"; 
    //加载驱动程序Class.forName("org.gjt.mm.mysql.Driver").newInstance();
    //建立连接Connection conn= DriverManager.getConnection(url); 
    //创建语句对象Statement stmt=conn.createStatement
    (ResultSet.TYPE_SCROLL_SENSITIVE,
    ResultSet.CONCUR_UPDATABLE);
    // ****     数据库连接代码结束 *******  
      String sql="select * from username";
    ResultSet rs=stmt.executeQuery(sql);
    //rs.first();while(rs.next()){out.print("用户名:");
    out.print(rs.getString("uid")+" 密码:");
    out.println(rs.getString("pwd")+"<br>");}
    rs.close();stmt.close();conn.close();%>

     

    第二种方式,用JavaBean来实现:

     

    DBConnMySql.java编译以后的Class文件应该放在Web-INF\classes\conn目录下。

     

    package conn;    //导入包import java.sql.*;        
    //导入数据库操作的类public class DBConnMySql            
    //构造方法,初始化{private Connection conn;        
    //连接对象private Statement stmt;    
    //语句对象private ResultSet rs;    
    //结果集对象private String MySqldriver;
    //MYSQL Server驱动程序字符串private String MySqlURL; 
    //MYSQL Server连接字符串//*********************************
    用  org.gjt.mm.mysql.Driver 驱动 
    *  该方法取得连接所需各种参数,组成连接字符串,
    然后再建立连接*  server;dbname,user,pass,port 
    分别表示MYSQL 服务器的地址,
    *  数据库,用户名,密码,端口
    **********************************/
    public Connection getConnToMySql
    (String server,String dbname,String user,String pass,String port)
    {//MYSQl驱动程序MySqldriver = "org.gjt.mm.mysql.Driver";    
    MySqlURL = "jdbc:mysql://";          
    //连接字符串一部分try{//完整的连接字符串MySqlURL 
    =MySqlURL+server+":"+port+"/"+dbname+"?user=
    "+user+"&password="+pass+"&useUnicode
    =true&characterEncoding=GB2312"; 
    Class.forName(MySqldriver);conn 
    = DriverManager.getConnection(MySqlURL);}
    catch(Exception e){System.out.println
    ("操作数据库出错,请仔细检查");
    //System.err.println(e.getMessage());}return conn;}    
    //关闭数据库连接public void close(){try{//rs.close();
    //stmt.close();conn.close();}catch(SQLException 
    sqlexception){sqlexception.printStackTrace();}}}

     

    这个文件只是实现了数据库的连接,下面再写一个测试文件,就是用SQL语句从数据库里查询出记录,以验证我们数据库的连接是否成功。 #p#分页标题#e#

     

    connmysql.jsp文件源代码如下:

     

    <meta http-equiv="Content-Type" content="text/html; 
    charset=gb2312"><%@ page contentType="text/html; 
    charset=gb2312" language="java" import="java.sql.*"  %>
    <jsp:useBean id="DBConn" scope="page" class="conn.DBConnMySql"/>
    <% //以下几项请自行修改String server="localhost";        
    //MYSQL 服务器的地址String dbname="test";       
     //MYSQL 数据库的名字String user="root";            
    //MYSQL 数据库的登录用户名String pass="chfanwsp";        
    //MYSQL 数据库的登录密码String port="3306";           
     //SQL Server 服务器的端口号,默认为1433Connection 
    conn=DBConn.getConnToMySql
    (server,dbname,user,pass,port);
    Statement stmt=conn.createStatement
    (ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_READ_ONLY);
    String sql="select * from username";
    String sql1="insert into username (uid,pwd) values
    ('梦想年华','梦想年华')";stmt.executeUpdate(sql1);
    ResultSet rs=stmt.executeQuery(sql);while(rs.next())
    {out.print("用户名:");out.print(rs.getString("uid")+" 密码:");
    out.println(rs.getString("pwd")+"<br>");}
    //rs.close();//stmt.close();//conn.close();DBConn.close();%>

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多