笔记

一:使用JDBC的步骤
1:加载驱动 创建BaseDao
首先创建公共参数
// 1.创建公共参数
private static String driver;
private static String url;
private static String name;
private static String pwd;
private static Connection conn = null;
private static PreparedStatement ps = null;
// 定义一个初始化读取数据的方法
public static void init() {
// 1.创建配置文件对象
Properties p = new Properties();
// 创建输入流 并且将文件路径告诉它
InputStream is = BaseDao.class.getClassLoader().getResourceAsStream(
“jdbc.properties”);

	try {
		// 加载文件
		p.load(is);
		// 读取参数并且给对应的属性赋值
		driver = p.getProperty("driver");
		url = p.getProperty("url");
		name = p.getProperty("name");
		pwd = p.getProperty("pwd");

	} catch (IOException e) {
		e.printStackTrace();
	}
}

// 使用静态代码块自动执行init方法
static {
	init();
}
	public static void close(ResultSet res) {
	try {
		if (res != null) {
			res.close();
		}
		if (ps != null) {
			ps.close();
		}
		if (conn != null) {
			conn.close();
		}
	} catch (SQLException e) {
		e.printStackTrace();
	}

}
//2. 获取数据库连接的方法
public static Connection getConn() {
	// 判断连接是否为空
	try {
		if (conn == null) {
			Class.forName(driver);
			conn = DriverManager.getConnection(url, name, pwd);
		}
	} catch (ClassNotFoundException e) {
		e.printStackTrace();
	} catch (SQLException e) {
		e.printStackTrace();
	}
	return conn;
}
// 定义增、删、改的通用方法
public static int update(String sql, Object[] o) {
	// 定义返回值
	int num = -1;
	// 创建命令对象
	try {
		ps = BaseDao.getConn().prepareStatement(sql);
		// 替换占位符 遍历数组 按照顺序替换占位符
		for (int i = 1; i <= o.length; i++) {
			ps.setObject(i, o[i - 1]);
		}
		// 执行sql语句
		num = ps.executeUpdate();

	} catch (SQLException e) {
		e.printStackTrace();
	} finally {
		close(null);

	}
	return num;

}
3/发送命令

	// 1.创建sql 命令
	String sql = "DELETE FROM RESULT WHERE STUDENTNO=?";
	// 2.创建数组将参数放入数组
	Object[] o = { 10007 };
	// 3.调用通用方法
	int a = BaseDao.update(sql, o);
	4.处理结果	
	
	if (a > 0) {
		System.out.println("删除成功");
	} else {
		System.out.println("删除失败");
	}
	5.关闭连接
BaseDao.close(res);

关于JDBC技术
1.作用:使用java程序连接各种类型的数据库
2.原理:
a:DiverManager(类):驱动管理器
b.Connection:连接对象
c.Statement:命令对象
d.ResultSet:结果集对象
只有a是类,其他三个都是接口
驱动管理器根据连接的数据库是哪种类型选择合适的驱动进行安装
连接对象负责在数据库和java程序之间建立桥梁,方便沟通
由命令对象发送Sql语句到数据库进行执行
如果执行的是查询语句,则由结果集将数据带回到java程序中
如果执行的是增删改语句,返回一个int数字代表受影响的行数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值