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 服务器的端口号,默认为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();%>
新闻热点
疑难解答