对于jdbc连接数据库,我这里的数据库是mysql,我把它分为四个步骤,这个每个人都有自己的分法,大体基本过程还是相差不大。
第一步:加载数据库驱动,这里是加载mysql的驱动,注意,你的自己去下载一个mysql驱动,版本不限。
try {
Class.forName("com.mysql.jdbc.Driver");//加载MySql的驱动类
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("找不到MYSQL驱动类");
e.printStackTrace();
}
第二步:创建连接,先申明一个Connection 变量,把数据库url也准备好,我这的URL是:
private String url="jdbc:mysql://localhost:3306/stu?user=root&password=123456";//密码设置自己的数据库密码
然后执行以下:
try {
con=DriverManager.getConnection(url);
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("连接失败!");
e.printStackTrace();
}
第三步:那就是做你要查询或者修改,删除之类的事情了,我这里只做了个查询的小例子:
public void chaxun()
{
String query = "select * from 09xinji where id=2";
String bu;
Statement stmt=null;
ResultSet rs=null;
try {
stmt = con.createStatement();
rs=stmt.executeQuery(query);
while(rs.next())
{
bu="学号:"+rs.getObject(1)+' '+"姓名:"+rs.getObject(2)+' '+"性别:"+rs.getObject(3)+" 年龄:"+rs.getObject(4);
System.out.println(bu);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这里只是查询了一个记录,对于多个记录查询的结果我还没研究过怎么储存起来,我有时间补一下。
第四部:既然我们打开了连接,不用的时候就要记得关闭,不然会占用系统的资源的,特别是服务器端的程序,大量的连接会导致崩溃的结果,所以用完了就关了它!
try {
rs.close();
stmt.close();
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
做完四部,基本可以做些简单的数据处理了。
我把它完整的整理一下,并把显示效果图也贴一下:
import java.sql.*;
public class Shujukucon {
private Connection con=null;
private String url="jdbc:mysql://localhost:3306/stu?user=root&password=123456";//密码设置自己的数据库密码
public Connection getcon()
{
try {
Class.forName("com.mysql.jdbc.Driver");//加载MySql的驱动类
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("找不到MYSQL驱动类");
e.printStackTrace();
}
try {
con=DriverManager.getConnection(url);
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("连接失败!");
e.printStackTrace();
}
System.out.println("连接成功!");
return con;
}
//连接成功了,就来试一下查询数据
public void chaxun()
{
String query = "select * from 09xinji where id=2";
String bu;
Statement stmt=null;
ResultSet rs=null;
try {
stmt = con.createStatement();
rs=stmt.executeQuery(query);
while(rs.next())
{
bu="学号:"+rs.getObject(1)+' '+"姓名:"+rs.getObject(2)+' '+"性别:"+rs.getObject(3)+" 年龄:"+rs.getObject(4);
System.out.println(bu);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
rs.close();
stmt.close();
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Shujukucon sjk=new Shujukucon();
sjk.getcon();
sjk.chaxun();
}
}