当前位置: 移动技术网 > IT编程>数据库>Mysql > MySQL为例讲解JDBC数据库连接步骤

MySQL为例讲解JDBC数据库连接步骤

2017年12月12日  | 移动技术网IT编程  | 我要评论

攻心四美,n750,烽火战国鲁班木

1、什么是jdbc?有什么作用?

java data base connectivity java数据库连接协议

是一种用于执行sql语句的java api,可以为多种关系数据库提供统一访问。

他提供了一种基准,据此可以构建更高级的工具和接口,使开发人员能够编写数据库应用程序

有了jdbc, 向各种关系数据发送sql语句就变得很容易了

换句话说就是有了jdbc api就不用为了访问oracle数据库专门写一个程序

或者又为访问mysql数据库专门写一个程序。

2、java app使用jdbc连接数据库并处理数据有哪些操作步骤?

将驱动包所在路径添加到classpath类路径变量中

(如:将mysql-connector-java-5.1.5-bin.jar复制到d:\javasoft下,然后把“d:/javasoft/mysql-connector-java-5.1.5-bin.jar”增加到classpath变量值中)

步骤:

1)加载driver驱动

2)创建数据库连接对象connection

3)创建一个可向数据库发送sql命令并返回结果的传送对象statement

4)执行sql命令并处理返回结果

5)处理后,如果有返回结果集,关闭结果集对象resultset

6)关闭对应的 statement 对象

7)关闭连接对象connection

3、案例分析1

//1、加载驱动 com.mysql.jdbc.driver是驱动类的路径
class.forname("com.mysql.jdbc.driver");  


//2、创建数据库连接对象
connection conn = null ;
statement stmt = null ;
resultset rs = null ;
string url = "jdbc:mysql://localhost:3306/test" ; //localhost表示本机 3306为默认端口 test为数据库名称
string username = "root" ;  //定义连接数据库的用户名和密码
string password = "root" ;
conn = drivermanager.getconnection(url,username,password);

复制代码 代码如下:
//3、创建一个可向数据库发送sql命令并返回结果的传送对象statementstmt = conn.createstatement();

复制代码 代码如下:
//4、将sql命令通过sql传送对象statement传送到数据库执行,并返回结果string sql = "select * from user" ;rs = stmt.executequery(sql);

executequery()用于执行查询语句,返回的是结果集,实际上就是一个满足查询条件的一个表

rs结果集通过指针来指定当前是哪一条数据

调用next方法,指针会指向下一条数据,如果有数据,会返回true

//5、处理结果集
while(rs.next()){
  println(rs.getstring("username"));
  pringln(rs.getint("password"));
}

这里没有声明抛出异常,需要放在try catch 的try里面,或者抛出也行,如果放在try里面,要把catchsqlexception...

finally要将conn stmt rs 都close 因为这些都是jvm的外部资源,和io一样都要手动关闭,它不在jvm的管理范围内

4、案例分析2(增删改)

增加、修改、删除都属于数据操作,与数据查询不同的是:

没有查询结果,不需要使用resultset

执行方法用的是executeupdate()不是executequery()

executeupdate()方法也有返回值,但不是resultset,而是一个int,表示更新了多少条数据,一般可不处理

5、什么是事务?

是一组原子性的数据库操作,指的是一组数据库操作中,要么都成功,要么都不成功。

一个经典的例子:转账

从100001账户转账100.00元到100002账户:
update account1 set money=money-100.00 where code='100001';
update account1 set money=money+100.00 where code='100002';

如何进行事务管理?

默认是自动提交的,进行事务管理时首先要设为手动提交

程序正常运行时,最后调用connection对象的commit方法进行事务提交

程序出现异常时,调用connection对象的rollback方法进行事务回滚

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网