目录
1.连接mysql数据库
连接mysql需要导入mysql-connector-java.jar的包,通过这个可以实现链接到mysql数据库中
package cn.tedu.jdbc; import java.sql.*; public class demo1 { public static void main(String[] args) throws ClassNotFoundException, SQLException { //1.注册数据库驱动 Class.forName("com.mysql.jdbc.Driver"); 加载Driver类,此类中会执行static静态代码块,在静态代码块中会注册驱动 //获取链接,如果是本地可以使用///,如果是异地的话可以使用//ip:端口/数据库名.Connection对象代表数据库链接的对象,客户端与数据库的所有交互都是通过Connection对象完成的.createStatement():创建传输器,用于发送sql和返回结果 Connection conn= DriverManager.getConnection("jdbc:mysql:///mydb","root","root"); //创建传输器 Statement对象用于向数据库发送SQL语句的方法, executeQuery(String sql):执行查询操作,返回结果集 executeUpdate(String sql):执行增删改操作,返回的是被影响的行数 Statement stat=conn.createStatement(); //利用传输器发送sql,返回结果 ResultSet对象 此对象用于封装查询结果,封装时类似于表格的方法,ResultSet中维护了一个游标,初始位置在第一行之前,调用next()方法,调用next()方法,游标向下移动一行 操作游标的方法: next():移动到下一行,有数据返回true,没有返回false previous():移动到上一行 absolute(int row):移动到第一行的前面 afterLast():移动到最后一行的后面 获取数据的方法: getInt(String col_name) getString(String col_name) getDouble(String col_name) getObject(String col_name) ResultSet rs=stat.executeQuery("select * from exam"); //处理结果 while (rs.next()){ int id=rs.getInt("id"); String name=rs.getString("name"); double chinese=rs.getDouble("chinese"); System.out.println(id+" "+name+" "+chinese); } //关闭资源,jdbc程序运行完后,需要释放创建的ResultSet,Statement,Connection这些对象特别是Connection是非常稀有的资源,用完后需要马上释放,Connection的使用原则,就是尽量晚创建,尽量晚释放. 注意:为了保证资源一定可以被释放,释放资源的代码要写到finally rs.close(); stat.close(); conn.close(); } }
JDBC的curb
实现:nsert into exam values (null,'liubei',66,77,88)
MariaDB [mydb]> select * from exam;
+------+--------+---------+------+---------+
| id | name | chinese | math | english |
+------+--------+---------+------+---------+
| 1 |