1.什么是jdbc?
答:jdbc是java data base connection 的简写,即java与数据库的连接,是java与数据库之间进行数据交互的工具,书上解释为java访问数据库的API。jdbc是一个轻量级的连接封装,适用于多种数据库,如:oracle、sql server,mysql等等。hibernate则是对jdbc的再封装。
2、jdbc的开发步骤:
1),下载驱动包
1,下载驱动jar包 http://jdbc.postgresql.org/download.html
2,给当前项目建立一个Folder,名为lib,把jar包放到lib中
3,在所建的项目上右击 --> properties --> Java Build Path --> Libraries --> Add Jars... -->找到那个jar包 -->单击OK
2),加载驱动程序
1、Class.forName()为静态方法,通过类名点方法名调用。
括号内为驱动程序,根据数据库类型选择:
oracle:"oracle.jdbc.driver.OracleDriver"
sql server:"com.microsoft.jdbc.sqlserver.SQLServerDriver"
mysql:"org.gjt.mm.mysql.Driver"
3),获取连接
String url = "连接字符串";
连接字符串根据数据库类型填写:
sql server:【jdbc:sqlserver://ip地址[本机的用localhost或127.0.0.1均可]:1433;databaseName=数据库名称】
mysql:【jdbc:mysql://ip地址[本机的用localhost或127.0.0.1均可]:3306/数据库名称】
Oracle:jdbc:orcle:thin:@ip地址[本机的用localhost或127.0.0.1均可]:1521:数据库实例名称[如orcl]
注意:当使用本机ip地址连接时需要关闭防火墙,否则连接不上,使用localhost或127.0.0.1则不用关闭防火墙。
Connection
con = DriverManager.getConnection(url, "用户名", "密码");
4),创建statement对象
statement对象是在数据库和java类之间运送数据的工具。
创建语句:Statement sm = con.createStatement();
5),执行sql语句得出查询结果
Statement提供了两种方法executeUpdate(sql)与executeQuery(sql)负责,前者用来执行insert,update,delete语句,后者执行select语句。
6),对查询结果进行处理
如果是添加更新或者删除数据记录,可以定义一个整形变量判断是否操作成功:
例如:int n=sm.executeUpdate(sql);
if(n==1){
System.out.println("操作成功!");
}else{
System.out.println("操作失败!");
}
如果是执行executeQuery()方法,则使用resultSet进行处理
例如:ResultSet rs = stmt.executeQuery(sql) ;
while(rs.next()){
String name = rs.getString("name") ; //name指定数据库表的列
String password = rs.getString(1) ; // 1为从数据库表中获取的第一列。此方法比较高效
}
System.out.println("用户名:"+name+"密码:"+password);
7),关闭连接释放资源
con.close();