β

Java JDBC编程套路教程

Mindy 105 阅读
学习Java开发,一个必须掌握的知识点,就是数据库操作。当程序需要用到的数据达到一定程度时,就不能简单地用本地文件来储存了,而是借助数据库。

目前,用的最多的数据库有MySql,Oracle等,Java编程中连接、使用不同数据库的操作都是大同小异的,这里以MySql数据库为例。

JDBC编程其实不难,有一个固定的使用套路:

1) 加载 Driver 驱动:Class.forName("com.mysql.jdbc.Driver");

2) 创建数据库连接对象,登录到数据库: Connection conn=DriverManager.getConnection("jdbc:mysql://...(地址,端口),"数据库用户名","数据库密码");

3) 创建一个可向数据库发送 SQL 命令并返回结果的传送对象:Statement statement=conn.createStatement();
4) 创建SQL命令并执行:String sql="sql命令语句"; statement.executeUpdate(sql);resultset=statement.executeQuery(sql);
5) 如果是执行查询类命令,会有结果集返回,处理结果集获取每一条记录的具体属性的具体数据:

while(resultset.next()){int/double/String  a=resultset.getInt/Double/String("属性名");}

注意:结果集是一个表,第一行是属性名,第二行开始才是具体的数据,所以首先要通过resultset.next()把游标移动到第二行,看有没有数据,有则进行提取。

6)关闭结果集:resultset.close();

7) 关闭对应的 Statement 对象:statement.close();
8) 关闭连接对象 Connection:conn.close();


应用到代码实例:

public String doLogin(String code_input,int password_input)
{
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;

try{
Class.forName("com.mysql.jdbc.Driver");

conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/bank","root","123456");
stmt=conn.createStatement();

String sql="select * from account where code = '"+code_input+"' and password = "+password_input;
rs=stmt.executeQuery(sql);

if(rs.next())
{
return code_input;
}else{
return "-1";
}

}catch(Exception ex)
{
ex.printStackTrace();
return "-1";
}finally
{
if(rs!=null)
{
try{
rs.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
if(stmt!=null)
{
try{
stmt.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
if(conn!=null)
{
try{
conn.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
}
}

}




作者:Mindy
我是好人,好人就是我,我就是一码农Mindy
原文地址:Java JDBC编程套路教程, 感谢原作者分享。