再识JDBC

        上一篇文章中介绍了关于jdbc的简单连接数据库操作,所有代码都写在main方法中,看着有些麻烦。连接数据库操作对于大部分简单程序是差不多的,所以这次再识JDBC,我将数据库的连接,封装到一个类中。将数据库的连接,与访问操作分离。减少了代码的耦合,提高了复用性。
package com.szb.dbutil;

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

public class Dbutil2 {
	private static String driver;
	private static String url;
	private static String username;
	private static String password;
	static {//初始化参数
		driver = "com.mysql.jdbc.Driver";
		url = "jdbc:mysql://localhost:3306/db_jxgl";
		username = "root";
		password = "123456";
	}
	public static Connection open() {//建立数据库连接
		Connection conn = null;
		try {
			
			Class.forName(driver);
			conn = DriverManager.getConnection(url, username, password);
			return conn;
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}
	public static void close(Connection conn) {//关闭数据库连接
		if (conn!= null) {
			try {
				conn.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub

	}

}

        有了这个类后,对数据库的访问会更加方便,下面代码与昨天的比较,更简洁一些吧。

package com.szb.dbutil;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Dbutil1_2 {

	public static void main(String[] args) {
		Connection conn = Dbutil2.open();//建立数据库连接
		String sql = "select id,stu_id,name from student";
		try {
			Statement stmt = conn.createStatement();
			ResultSet rs = stmt.executeQuery(sql);//执行语句
			while (rs.next()) {
				int id = rs.getInt(1);
				int stu_id = rs.getInt(2);
				String name = rs.getString(3);
				System.out.println("id:"+id+" ,stu_id:"+stu_id+" ,name:"+name);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}finally {
			Dbutil2.close(conn);//关闭连接
		}
	}

}

   这是执行结果:查出了王五 王六    

 

        再分享一个今天遇到的问题:

我想将一个名为db_register的数据库备份出来,保存 .sql文件,用命令 mysqldump -u root -p db_register > f:/db_register.sql     随手打了一个分号 这是好多人的习惯了。。 结果报错了。原来没有进入MySQL时不算是输入SQL命令。所以不用分号。牢记! 请看下图:


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值