JDBC的第一个版本,不使用配置文件。使用jar文件一个

本文介绍了如何使用JDBC连接MySQL数据库,并通过优化代码实现更高效的SQL查询。包括加载数据库驱动、获取连接、执行SQL语句、处理结果集等关键步骤。同时展示了对原始代码的简化和异常处理的改进,使得代码更加简洁易读。
学习jdbc的第一个例子,在代码中封装jdbc链接mysql的相关信息。只用到了链接mysql的一个jar文件。
package com.xiaohui.jdbc;

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

public class JdbcDemo1 {

	public static void main(String[] args) throws SQLException,
			ClassNotFoundException {
		// 注册数据库的驱动
		// DriverManager.registerDriver(new com.mysql.jdbc.Driver());
		// 利用反射间接加载数据库驱动(省略上面的一行)
		Class.forName("com.mysql.jdbc.Driver");
		// 取得与mySql数据库的链接桥梁。 sql包
		Connection conn = DriverManager
		// 协议 ip 端口 那个数据库
				.getConnection("jdbc:mysql://127.0.0.1:3306/mysql3",//
						"root", // 数据库名
						"root"); // 密码
		System.out.println(conn != null ? "取得链接" : "链接失败!");
		// 创建封装SQl命令的对象
		String sqlstr = "select * from employee";
		Statement state = conn.createStatement();
		// 执行SQL命令,并返回符合条件的记录。
		ResultSet rs = state.executeQuery(sqlstr);

		// 处理结果集合。
		while (rs.next()) {
			// Object name = rs.getObject("name");
			// System.out.println(name);
			int id = rs.getInt("id");
			String name = rs.getString("name");
			String sex = rs.getString("sex");
			float salary = rs.getFloat("salary");
			System.out.println(id + ":" + name + ":" + sex + ":" + salary);
		}
		// 依次关闭所用过的连接对象。
		rs.close();
		state.close();
		conn.close();
	}
}

对上面的进行简单那优化:

package com.xiaohui.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) throws ClassNotFoundException {
		Connection conn = null;
		Statement state = null;
		ResultSet rs = null;
		String url = "jdbc:mysql://127.0.0.1:3306/mysql3";
		String user = "root";
		String pass = "root";
		String sqlstr = "select * from employee";
		String driver ="com.mysql.jdbc.Driver";

		try {
			Class.forName(driver);
			conn = DriverManager.getConnection(url, user, pass);
			state = conn.createStatement();
			rs = state.executeQuery(sqlstr);

			// 处理结果集合。
			while (rs.next()) {
				int id = rs.getInt("id");
				String name = rs.getString("name");
				String sex = rs.getString("sex");
				float salary = rs.getFloat("salary");
				System.out.println(id + ":" + name + ":" + sex + ":" + salary);
			}
		} catch (Exception e) {
		} finally {
			// 依次关闭所用过的连接对象。
			if (rs != null) {
				try {
					rs.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
			if (state != null) {
				try {
					state.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
			if (conn != null) {
				try {
					conn.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
		}
	}
}


使用到的架包:mysql-connector-java-5.1.22-bin.jar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值