码迷,mamicode.com
首页 > 数据库 > 详细

黑马day10 jdbc入门&mysql

时间:2015-06-29 22:22:03      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:jdbc

JDBC的定义:JDBC就是sun公式定义的一类接口,可以供mysql,oracle等公司实现接口。
需要导入mysql的jar包
实现JDBC的步骤:
1.注册数据库驱动
2.获取数据库连接(可以把他想象成一个高速公路)
3.获取传输器对象(把他想象成一个高速公路行驶的汽车)
4.利用传输器传输sql语句到数据库宗执行,获取结果集
5.遍历结果集
6.关闭资源(先创建的后关闭,后创建的先关闭)
案例一:
在数据库中创建数据库:
   create database day10;
   use day10;
   create table user(
       id int primary key auto_increment;
       gender bit;
       name varchar(40),
       date date
);
JDBCDemo1:

package cn.itheima.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import com.mysql.jdbc.Driver;

public class JDBCDemo1 {
	public static void main(String[] args) throws Exception {
		//1.注册驱动(其实这里注册了两次)
		DriverManager.registerDriver(new Driver());
		//2.获取数据库的连接
		Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/day10", "root", "169500");
		//3.获取传输对象
		Statement statement = con.createStatement();
		//4.得到结果集
		ResultSet rs = statement.executeQuery("select * from user");
		//5.遍历结果集
		while(rs.next()){
			String name = rs.getString("name");
			byte gender = rs.getByte("gender");
			System.out.println(name+":"+gender);
		}
		//6.关闭资源
		rs.close();
		statement.close();
		con.close();
	}
}

缺点:

其实一共注册了两次驱动,可以看driver的源码注册一次,我们人工的注册了一次。

关闭资源不合理。

JDBCDemo2:

package cn.itheima.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCDemo2 {
	public static void main(String[] args) {
		Connection con=null;
		Statement sta=null;
		ResultSet rs=null;
		try{
			//1.注册驱动
			Class.forName("com.mysql.jdbc.Driver");
			//2.获取连接
			con= DriverManager.getConnection("jdbc:mysql://localhost:3306/day10", "root", "169500");
			//3.获取传输对象
			sta=con.createStatement();
			//4.结果集
			rs=sta.executeQuery("select * from user");
			//5.遍历结果集
			while(rs.next()){
				String name=rs.getString("name");
				System.out.println(name);
			}
		}catch (Exception e) {
			e.getMessage();
		}finally{
			if(rs!=null){
				try {
					rs.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}finally{
					rs=null;
				}
			}
			if(sta!=null){
				try {
					sta.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}finally{
					sta=null;
				}
			}
			if(con!=null){
				try {
					con.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}finally{
					con=null;
				}
			}
		}
	}
}
缺点:代码冗余,因此最后写一个工具类。

运行结果:

技术分享

版权声明:本文为博主原创文章,未经博主允许不得转载。

黑马day10 jdbc入门&mysql

标签:jdbc

原文地址:http://blog.csdn.net/u014010769/article/details/46686639

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!