JDBC

用Java语言控制数据库实现对数据库的增删改查

这里需要用到数据库连接池------DBCP连接池
数据库操作---------DBUtils
先来说一下整体的框架就是流程啥咋样的:
(适合小白加入了自己的理解,理解不对的地方批评指点)
JDBC数据库


## 记住4321

public class DB {
	//4个数据库参数
	static String driver = null;
	static String url = null;
	static String name = null;
	static String pwd = null;
	//3个操作对象
	protected Connection conn = null;
	protected PreparedStatement ps = null;
	protected ResultSet rs= null;
	//2个方法
	public void getConn() {
		try {
			Class.forName(driver);
			conn = DriverManager.getConnection(url,name,pwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public void close() {
		try {
			if (rs!=null) rs.close();
			if (ps!=null) ps.close();
			if (conn!=null) conn.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
	//1个静态代码块
	static{
		InputStream is = DB.class.getClassLoader().getResourceAsStream("config.properties");
		Properties pp = new Properties();
		try {
			pp.load(is);
			
			driver = pp.getProperty("a");
			url = pp.getProperty("b");
			name = pp.getProperty("c");
			pwd = pp.getProperty("d");
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	
}
————————————————————————————————————————————————————————————————————————

#### 下面是代码的下半部分
1.建立桥
2.定义要执行的sql语句
3.整个特种兵运输sql语句
4.执行命令
5.关闭资源
、
上面的代码就是没有加入 DbUtils工具类的代码就是这个样子的
下面讲解一下
JDBC    DBUtils 数据库连接池(DBCP C3P0 Duid)
三者之间的关系
DBUtils 和数据库连接池都是来简化代码的   就是java程序控制数据库的代码就是JDBC

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
加入DBUtils后 4.3.2.1 就变成了 4.1.1.1

public class Test extends DB {

public void scoreOrder() {
	String sql= "select s.studentno,studentname,sum(studentresult) from student s ,result r\r\n" + 
			"where s.studentno = r.studentno\r\n" + 
			"group by s.studentno,studentname\r\n" + 
			"order by sum(studentresult) desc";
	try {
		getConn();
		ps = conn.prepareStatement(sql);
		rs = ps.executeQuery();
		while(rs.next()) {
			System.out.println( rs.getString(1)+"\t"+rs.getString(2)+"\t"+ rs.getInt(3));
		}
	} catch (SQLException e) {
		e.printStackTrace();
	}finally {
		close();
	}	
}

public static void main(String[] args) {
	new Test().scoreOrder();
}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值