mysql jdbc连接步骤及常见参数
mysql数据库自不必说,现在很多程序开发应用及站长们常用到,jdbc可能一般会比较陌生一些,jdbc是什么意思?这里也会提到,最主要的是为大家介绍一下,mysql jdbc连接步骤及常见参数详解。
jdbc是什么意思?
jdbc(java data base connectivity,java数据库连接)是一种用于执行sql语句的javaapi,可以为多种关系数据库提供统一访问,它由一组用java语言编写的类和接口组成。jdbc提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,有了jdbc,向各种关系数据发送sql语句就是一件很容易的事,程序员只需用jdbcapi写一个程序就可向相应数据库发送sql调用。
jdbc如何连接mysql数据库?
⑴、需要先加载注册jdbc驱动程序:
class.forname("com.mysql.jdbc.driver");
class.forname("com.mysql.jdbc.driver").newinstance();
⑵、定义驱动程序与数据源之间的连接jdbcurl:
⑶、建立数据调用api连接对象,接着建立sql陈述式对象(statementobject),最后执行sql语句:
mysql jdbc连接常见参数及详解:
jdbc(java data base connectivity,java数据库连接)是一种用于执行sql语句的java api,可以为多种关系数据库提供统一访问,它由一组用java语言编写的类和接口组成。jdbc提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。
如果要使用数据库就要添加数据库的驱动,不同的数据库有不用的驱动,这里就不一一说明,添加jar程序驱动包的方法就不在这里解释,另一个文章里面有介绍
下面是一个实例去介绍mysql数据库的连接,其它数据库的方法也是差不多的。
/** * @author :陶伟基 ,微博:http://weibo.com/taoandtao * @date :2012/12/11 * @place:广州大学华软软件学院 */ import java.sql.drivermanager; import java.sql.resultset; import java.sql.sqlexception; import java.sql.connection; import java.sql.statement; public class mysqldemo { public static void main(string[] args) throws exception { connection conn = null; string sql; // mysql的jdbc url编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值 // 避免中文乱码要指定useunicode和characterencoding // 执行数据库操作之前要在数据库管理系统上创建一个数据库,名字自己定, // 下面语句之前就要先创建javademo数据库 string url = "jdbc:mysql://localhost:3306/javademo?" + "user=root&password=root&useunicode=true&characterencoding=utf8"; try { // 之所以要使用下面这条语句,是因为要使用mysql的驱动,所以我们要把它驱动起来, // 可以通过class.forname把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以 class.forname("com.mysql.jdbc.driver");// 动态加载mysql驱动 // or: // com.mysql.jdbc.driver driver = new com.mysql.jdbc.driver(); // or: // new com.mysql.jdbc.driver(); system.out.println("成功加载mysql驱动程序"); // 一个connection代表一个数据库连接 conn = drivermanager.getconnection(url); // statement里面带有很多方法,比如executeupdate可以实现插入,更新和删除等 statement stmt = conn.createstatement(); sql = "create table student(no char(20),name varchar(20),primary key(no))"; int result = stmt.executeupdate(sql);// executeupdate语句会返回一个受影响的行数,如果返回-1就没有成功 if (result != -1) { system.out.println("创建数据表成功"); sql = "insert into student(no,name) values('2012001','陶伟基')"; result = stmt.executeupdate(sql); sql = "insert into student(no,name) values('2012002','周小俊')"; result = stmt.executeupdate(sql); sql = "select * from student"; resultset rs = stmt.executequery(sql);// executequery会返回结果的集合,否则返回空值 system.out.println("学号\t姓名"); while (rs.next()) { system.out .println(rs.getstring(1) + "\t" + rs.getstring(2));// 入如果返回的是int类型可以用getint() } } } catch (sqlexception e) { system.out.println("mysql操作错误"); e.printstacktrace(); } catch (exception e) { e.printstacktrace(); } finally { conn.close(); } } }