JavaWeb学习心得之JDBC入门

一、JDBC简介

       JDBC全称为Java database connectivity,是SUN公司指定的Java数据库连接技术的简称。它是sun公司和数据库开发商共同开发出来的独立于DBMS的应用接口,它为Java开发人员进行数据库编程提供了统一的API。 如下图所示:

JavaWeb学习心得之JDBC入门_第1张图片

二、JDBC开发

1.搭建实验环境

       在mysql中创建一个数据库,并创建user表和插入表的数据。

CREATE DATABASE jdbcdemo CHARACTER SET utf8 COLLATE utf8_general_ci

CREATE TABLE users(
		id int PRIMARY KEY,
		name VARCHAR(40),
		password VARCHAR(40),
		email VARCHAR(60),
		birthday date 
);

INSERT INTO users(id,name,password,email,birthday) VALUES(1,'zhangfei','123456','[email protected]','1987-2-18');
INSERT INTO users(id,name,password,email,birthday) VALUES(2,'caocao','123456','[email protected]','1989-8-16');
INSERT INTO users(id,name,password,email,birthday) VALUES(3,'libai','123456','[email protected]','1995-3-22');

2.新建一个Java工程,并导入数据库驱动

JavaWeb学习心得之JDBC入门_第2张图片

3.编写代码读取user表中的数据

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



public class JdbcDemo01 {
	public static void main(String[] args) {
		//要连接的数据库URL
		String url = "jdbc:mysql://localhost:3306/JdbcDemo";
		//连接的数据库时使用的用户名
		String userName = "root";
		//连接的数据库时使用的密码
		String password = "root";
		//数据库驱动
		String driver = "com.mysql.jdbc.Driver";
		
		try {
			//1.加载驱动
			Class.forName(driver);
			//2.获取与数据库的链接
			Connection conn = DriverManager.getConnection(url,userName,password);
			//3.获取用于向数据库发送sql语句的statement
			Statement st = conn.createStatement();
			String sql = "select id,name,password,email,birthday from users";
			//4.向数据库发sql,并获取代表结果集的resultset
			ResultSet rs = st.executeQuery(sql);
			//5.取出结果集的数据
			while(rs.next()){
				System.out.println("id="+rs.getObject("id"));
				System.out.println("name="+rs.getObject("name"));
				System.out.println("password="+rs.getObject("password"));
				System.out.println("email="+rs.getObject("email"));
				System.out.println("date="+rs.getObject("birthday"));
			}
			//6.关闭链接,释放资源
			rs.close();
			st.close();
			conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
结果:

id=1
name=zhangfei
password=123456
[email protected]
date=1987-02-18
id=2
name=caocao
password=123456
[email protected]
date=1989-08-16
id=3
name=libai
password=123456
[email protected]
date=1995-03-22

三、数据库类讲解

1.DriverManager类

       用于加载驱动,并创建与数据库的连接,常用API方法:

  • DriverManager.getConnection(url,username,password)
2.URL讲解
       URL写法:
JavaWeb学习心得之JDBC入门_第3张图片
常用数据库URL:
  • Oralce:jdbc:oracle:thin:@localhost:1521:sid
  • SqlServer:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=sid
  • MySql:jdbc:mysql://localhost:3306/sid
3.Connection类讲解
       用于表示数据库的连接,客户端与数据库所有交互都是通过Connection对象完成的,其方法包括:

  • createStatement():创建向数据库发送sql的statement对象
  • prepareStatement(sql):创建向数据库发送编译sql的PrpareStatement对象
  • prepareCall(sql):创建执行存储过程的callableStatemnt对象
  • setAutoCommit(boolean autoCommit):设置事务是否自动提交
  • commit():在连接上提交事务
  • rollback():在链接上回滚事务
4.statement类讲解
      用于向数据库发送sql语句,常用方法:
  • executeQuery(sql):用于向数据库发送查询语句
  • executeUpdate(sql):用于向数据库发送inset、update、delete语句
  • execute(sql):用于向数据库发送任意语句
  • addBatch(sql):把多条sql语句放到一个批处理中
  • executeBatch():向数据库发送一批sql语句执行
5.ResultSet类讲解
       用于代表sql语句的执行结果。常用方法:
  • getObject(int index)  获取任意数据
  • getObject (String columName)获取任意数据
  • getString(inti ndex)获取指定类型数据
  • getString(String columnName)获取指定类型数据
  • next() 移动到下一行
  • previous()移动到前一行
  • absolute(int row)移动到指定行
  • beforeFirst()移动到最前面
  • afterLast()移动到最后一行




你可能感兴趣的:(JavaWeb学习笔记)