对MySQL进行操作的大体步骤
- JDBC操作数据库步骤
- 1.注册驱动
- 告知JVM是那个的是那个驱动
- 2.获取连接
- 使用JDBC中的类 完成对MySQL数据库的连接
- 3.获取语句执行平台
- 通过连接对象获取对SQL语句的执行者对象
- 4.执行sql语句
- 使用执行者对象,向数据库执行SQL语句
- 获取到数据库的执行后的结果
- 5.处理结果
- 6.释放资源 一堆close();
1.连接数据库
在我们使用JDBC对MySQl操作时首先需要做的事情为对数据库的连接
我们先来写一个类对连接数据库进行操作 减少之后的工作
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCde1{
//注册驱动 反射技术 将驱动类加入到内容
//使用 java.sql.DriverManager类的静态方法 registerDriver(Driver driver)
//Driver 接口,参数传递 MySQL驱动程序中的实现类
public static void main(String[] args) throws ClassNotFoundException, SQLException {
Connection con=MyConnection();
con.close();//使用后需要关闭
}
public static Connection MyConnection() throws ClassNotFoundException, SQLException {
//DriverManager.registerDriver(new Driver());
//驱动类源代码 注册两次驱动程序
Class.forName("com.mysql.jdbc.Driver");
//2.获得数据库的链接
//DriverManager累的静态方法
//static Connection getConnection(String url,String user,String password)
//返回值是 Connection 接口的实现类 , 在mysql驱动程序
//账号密码 -u root -p root
//url:数据库的链接地址 : jdbc:mysql://连接的主机IP:端口号//数据库名字
String url="jdbc:mysql://localhost:3306/mybase";
String username="root",password="root";//默认密码账号为root
Connection con=DriverManager.getConnection(url, username, password);
return con;
//System.out.println(con);
/*
*3.获得语句执行平台,通过数据库连接对象 获取到SQL语句的执行者对象
*con对象调用方法
* Statement createStatement()获取Statement对象 将SQL语句发送到数据库
* 返回值 Statement 接口的实现类对象 在 mysql驱动程序
*
* */
// Statement stat=con.createStatement();
//System.out.println(stat);
/*4.执行sql语句
* 通过执行者对象 调用方法执行SQL语句 获取结果
* int executeUpdate(String sql) 执行数据库中的SQL语句中的 insert delete update
*返回int 操作成功数据表多少行
* */
// int roo=stat.executeUpdate(
// "INSERT INTO sort(sname,sprice,sdesc)VALUES('汽车',2000000,'不卖')");
// System.out.println(roo);
//6.释放资源 一堆 close();
// stat.close();
// con.close();
}
}
之后我们使用JDBCde1的静态方法Connection来连接数据库便可
2.使用JDBC进行显示一个表
我们使用jdbc对mysql中的一个售卖表进行访问并且读取获取这个表然后显示出来
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class JDBCde2 {
/*
*JDBC技术查询数据表 获取结果集
*/
public static void main(String[] args) throws SQLException, ClassNotFoundException {
Connection con=JDBCde1.MyConnection();
//1~2.使用JDBCde1的静态方法Connection来连接数据库
//3.获取执行SQL语句对象
Statement stat=con.createStatement();
String sql="SELECT * FROM sort";
//4.调用执行者 对象方法执行SQL语句获取结果集
//ResultSet executeQuery(String sql)执行sql语句中的SCELECT查询
//返回ResultSet接口的实现类对象 实现类在mysql驱动中
ResultSet rs=stat.executeQuery(sql);
//5.处理结果集
//System.out.println(rs);
//ResultSet接口方法 boolean next()返回true有结果集 false 没有结果集
while(rs.next()) {
//获取每列的数据 使用ResultSet接口方法xx
System.out.println(rs.getInt("sid")+" "+rs.getString("sname")
+" "+rs.getDouble("sprice")+" "+rs.getString("sdesc"));
}
rs.close();
stat.close();
con.close();
}
}
**好了就是这样 这样就会打印出一张表格
我们来看看表格的数据是什么呢**
序号 | 名称 | 价格 | 说明 |
---|---|---|---|
1 | 家电 | 2000.0 | 优惠 |
2 | 家电2 | 3000.0 | 优惠2 |
3 | 家电3 | 4000.0 | 优惠3 |
4 | 家电4 | 5000.0 | 优惠4 |
5 | 汽车 | 2000000.0 | 不卖 |
emmmmmm 这个存储的数据有点随意 大家无视就好