JDBC是java语言操作数据库的一套API.
J=java DB=数据库 C=连接
为了满足各个公司的需求,java制定了一套规则,也就是接口,实现部分交由使用公司来解决,我们在使用的时候只需要安装好jdk,在官网找到对应jar包,准备好数据库和要用到的表,将jar包导入lib目录然后加载,就可以通过Java代码操作数据库了。
//1.加载驱动类 Class.forName("com.mysql.jdbc.Driver"); //2.获取连接 String url="jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=utf-8"; Connection conn= DriverManager.getConnection(url,"root","1234"); //3. 定义sql和发送sql的工具 // 查询库存不足10的商品信息 String sql="select id,name,price,count,status,description from t_product " + "where count<10"; PreparedStatement sta=conn.prepareStatement(sql); //4.接收sql ResultSet res=sta.executeQuery(); //5.处理结果集 while (res.next()){ int id=res.getInt("id"); String name=res.getString("name"); double price= res.getDouble("price"); int count=res.getInt("count"); int status=res.getInt("status"); String description=res.getString("description"); System.out.println(id+"-"+name+"-"+price+"-"+count+"-"+status+"-"+description); } //6.释放资源 if(res!=null)res.close(); if(sta!=null)sta.close(); if(conn!=null) conn.close();
详解:
1.通过反射手段调用Class.forName()方法来进行类加载。
2.获取连接,需要对应的数据库路径、账户、密码,在后面加上characterEncoding=utf-8"统一为utf-8编码,避免出现乱码情况,若为idea工具,可在设置搜索框中输入Encodings,更改编码。
3.定义sql就是定义一个字符串,里面放入sql语句,为防止sql注入,这里使用PreparedStatement接口。
4.用ResultSet接收sql,数据库结果集的数据表,通常通过执行查询数据库的语句生成。
5.用while循环可以展示所有信息,但耗费资源,if只能展示一条信息,但耗费资源少。
6.如果不为空则释放资源。