JDBC第一天:JDBC的基础
第一,JDBC叫java数据库连接技术,是用来实现数据库的增、删、改、查的接口技术。
第二,实现数据库的连接步骤:在这之前需要导包
1,准备四大参数
a,,准备驱动类:driverClassName:com.mysql.jdbc.Driver
b,准备url:jdbc:mysql://localhost:3306/DATABASE(注:DATABASE为所创建的数据库名称)
c,准备数据库用户
d,准备数据库密码
2,加载驱动类
Class.forName("com.mysql.jdbc.Driver");
3,获取连接对象connection;
Connection con = DriverManager.getConnection(url, username, password);
第三:实现对啊网数据库的增、删、改、查
1,获取Statement发送器,向数据库发送sql语气。
Statement stmt = con.createStatement();
2,调用Statement的 int executeUpdate(String sql)方法发送sql语气。可以发送DML,DDL
                        String sql = "DELETE FROM stu";
                         int r = stmt.executeUpdate(sql);
注:对数据库的增删改查重要改 int r = stmt.executeUpdate(sql);的sql就行了。
3,执行查询:获取ResultSet结果集
ResultSet rs = stmt.executeQuery(sql);
4,解析ResultSet结果集
a,把行光标移动到下一行,可以调用next()方法完成。
while(rs.next()) {//把光标向下移动一行,并判断下一行是否存在!
	int empno = rs.getInt(1);//通过列编号来获取该列的值!
	String ename = rs.getString("ename");//通过列名称来获取该列的值
	double sal = rs.getDouble("sal");		
	System.out.println(empno +  ", " + ename + ", " + sal);
	} 
                  5,关闭资源:倒关
         rs.close();
         stmt.close();
         con.close();//必须要关,不关就死! 
public void fun3() throws Exception {
		Connection con = null;//定义引用
		Statement stmt = null;
		ResultSet rs = null;
		try {
			/*
			 * 一、得到连接
			 */
			String driverClassName = "com.mysql.jdbc.Driver";
			String url = "jdbc:mysql://localhost:3306/exam";
			String username = "root";
			String password = "123";
			
			Class.forName(driverClassName);
			con = DriverManager.getConnection(url, username, password);//实例化
			
			/*
			 * 二、创建Statement
			 */
			stmt = con.createStatement();
			String sql = "select * from emp";
			rs = stmt.executeQuery(sql);
			
			rs.last();//把光标移动到最后一行
System.out.println(rs.getRow());
			rs.beforeFirst();
			
			/*
			 * 三、循环遍历rs,打印其中数据
			 * 
			 * getString()和getObject()是通用的!
			 */
//			while(rs.next()) {
//				System.out.println(rs.getObject(1) + ", " 
//						+ rs.getString("ename") + ", " + rs.getDouble("sal"));
//			}
			
			int count = rs.getMetaData().getColumnCount();
			while(rs.next()) {//遍历行
				for(int i = 1; i <= count; i++) {//遍历列
					System.out.print(rs.getString(i));
					if(i < count) {
						System.out.print(", ");
					}
				}
				System.out.println();
			}
			
		} catch(Exception e) {
			throw new RuntimeException(e);
		} finally {
			// 关闭
			if(rs != null) rs.close();
			if(stmt != null) stmt.close();
			if(con != null) con.close();
		}
		
	}
} 
                    
                
                
            
        
浙公网安备 33010602011771号