设为首页 加入收藏

TOP

JDBCMYSQL学习笔记(一)JDBC基本使用(一)
2015-11-21 01:37:29 】 浏览:362
Tags:JDBCMYSQL 学习 笔记 JDBC 基本 使用

1、JDBC简介

SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。 JDBC全称为:Java Data Base Connectivity(java数据库连接),它主要由接口组成。 组成JDBC的2个包:java.sql javax.sql

开发JDBC应用需要以上2个包的支持外,还需要导入相应JDBC的数据库实现(即数据库驱动)。

\

2、使用JDBC的步骤——第一个JDBC程序

需求:编程从user表中读取数据,并打印在命令行窗口中。
(1) 搭建实验环境 :
a、在mysql中创建一个数据库,并创建user表,同时插入数据到表中。
b、新建一个Java工程,并导入数据库驱动。
(2) 编写程序,在程序中加载数据库驱动

         a、方式一:DriverManager. registerDriver(Driver driver)
 
         b、方式二:Class.forName(“com.mysql.jdbc.Driver”);
(3) 建立连接(Connection)
Connection conn = DriverManager.getConnection(url,user,pass);

(4) 创建用于向数据库发送SQL的Statement对象,并发送sql

         Statement st = conn.createStatement();
 
         ResultSet rs = st.excuteQuery(sql);

(5) 从代表结果集的ResultSet中取出数据,打印到命令行窗口

(6) 断开与数据库的连接,并释放相关资源

dome:

import java.sql.*;

import com.sun.org.apache.regexp.internal.recompile;

public class dome {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws SQLException,ClassNotFoundException{
		// TODO Auto-generated method stub
		
		String url = "jdbc:mysql://localhost:3306/skyfin";
		String username = "root";
		String password = "skyfin";
		//1.加载驱动
		//DriverManager.registerDriver(new com.mysql.jdbc.Driver());

		Class.forName("com.mysql.jdbc.Driver");		//2获取连接
Connection connection = DriverManager.getConnection(url,username,password);
	//3.获取向数据库发sql语句的statament对象
Statement stat = connection.createStatement();
//4.向数据库发送sql,获取数据库返回的结果集
ResultSet rsResultSet = stat.executeQuery("select * from user");
//5.从结果集中获取数据while (rsResultSet.next()) {System.out.println("id = "+ rsResultSet.getObject("id"));System.out.println("name = "+ rsResultSet.getObject("name"));
System.out.println("password = "+ rsResultSet.getObject("password"));}
 //6.释放资源(释放链接)rsResultSet.close();stat.close();connection.close();}}
 
 

3、DriverManager ——加载数据库驱动

Jdbc程序中的DriverManager用于加载驱动,并创建与数据库的链接,这个API的常用方法:

    DriverManager.registerDriver(new Driver());
    DriverManager.getConnection(url, user, password);
注意:在实际开发中并不推荐采用registerDriver方法注册驱动。原因有二:
一、查看Driver的源代码可以看到,如果采用此种方式,会导致驱动程序注册两次,也就是在内存中会有两个Driver对象。
二、程序依赖mysql的api,脱离mysql的jar包,程序将无法编译,将来程序切换底层数据库将会非常麻烦。
推荐方式:
Class.forName(“com.mysql.jdbc.Driver”);
采用此种方式不会导致驱动对象在内存中重复出现,并且采用此种方式,程序仅仅只需要一个字符串,不需要依赖具体的驱动,使程序的灵活性更高。
同样,在开发中也不建议采用具体的驱动类型指向getConnection方法返回的connection对象。

4、数据库URL ——标识数据库的位置

URL用于标识数据库的位置,程序员通过URL地址告诉JDBC程序连接哪个数据库,

MySql 数据库的URL写法为: jdbc:mysql:[]//localhost:3306/test 参数名:参数值
\
常用数据库URL地址的写法:
Oracle:jdbc:oracle:thin:@localhost:1521:skyfin
SqlServer:jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=skyfin
MySql:jdbc:mysql://localhost:3306/skyfin
Mysql的url地址的简写形式: jdbc:mysql://skyfin
常用属性:useUnicode=true&characterEncoding=UTF-8

jdbc:mysql://localhost:3306/testuser=root&password=&useUnicode=true&characterEncoding=gbk&autoReconnect=true&failOverReadOnly

5、Connection ——代表数据库的链接

Jdbc程序中的Connection,它用于代表数据库的链接。Connection 是数据库编程中最重要的一个对象,客户端与数据库所有交互都是通过Connection 对象完成的,这个对象的常用方法:
(1) createStatement():创建向数据库发送sql的statement对象。
(2) prepareStatement(sql) :创建向数据库发送预编译sql的PrepareSatement对象。
(3) prepareCall(sql):创建执行存储过程的callableStatement对象。
(4) setAutoCommit(boolean autoCommit):设置事务是否自动
首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Oracle GoldenGate 四、数据过滤.. 下一篇小贝_mysql主从复制作用以及案例

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目