JSP连接Mysql数据库


 

我写的一个用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语句从数据库里查询出记录,以验证我们数据库的连接是否成功。

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 服务器的端口号,默认为1433

Connection 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();

%>

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3