当前位置:Gxlcms > 数据库问题 > day17-jdbc 5.url介绍

day17-jdbc 5.url介绍

时间:2021-07-01 10:21:17 帮助过:31人阅读

技术分享

url用于标识数据库的位置,用于标识找哪个数据库。


技术分享

技术分享


 技术分享


总结:url是路径,其实就是确定是哪个数据库。用来确定我用的是哪一个数据库,并且通知我这个Connection或者是这个DriverManager获取这个连接的时候找的是哪个数据库。


  1. package cn.itcast.jdbc;
  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7. import com.mysql.jdbc.Driver;
  8. //解决关于加载驱动问题
  9. public class JdbcDemo2 {
  10. public static void main(String[] args) throws SQLException, ClassNotFoundException {
  11. //1.注册驱动
  12. //DriverManager.registerDriver(new Driver());//一注册驱动,驱动就加载到内存里面了 也就是说我们就可以用它了 加载了两个驱动
  13. Class.forName("com.mysql.jdbc.Driver");//优点是加载一次 替换registerDriver()这个方法 这个不耦合,根本就没用mysql驱动的东西 不是意味着那就不用驱动了,只是不依赖jar包
  14. //在代码上、表现上根本就看不到驱动那包 用的都是公共的那种接口(Connection、DriverManager、ResultSet、SQLException、Statement),就是JDK里面提供的公共的接口
  15. //编程的都知道不依赖任何东西是最好的,因为没有耦合,但是那是不可能的。所以要尽量让耦合度降低
  16. //加载mysql驱动
  17. Class.forName("oracle.jdbc.driver.OracleDriver");//加载oracle驱动
  18. //它怎么知道这是oracle驱动还是mysql驱动呢?它是如何区分的?
  19. //String url = "jdbc:mysql://localhost:3306/day17";
  20. String url = "jdbc:mysql:///day17";
  21. //2.获取连接对象
  22. Connection con = DriverManager.getConnection(url, "root", "");
  23. System.out.println(con);
  24. //connection是接口,是驱动,驱动肯定把这个接口实现了 编程用最顶层去接收操作起来会比较方便 前面是父,后面是子 用最顶层接收
  25. //3.通过连接对象获取操作sql语句的Statement
  26. Statement st = con.createStatement();
  27. //4.操作sql语句
  28. String sql = "select * from user";
  29. ResultSet rs = st.executeQuery(sql);//ResultSet就是查询的结果,可以想象成是集合,但是它不是集合
  30. //5.遍历结果集
  31. /* boolean flag = rs.next();//向下移动,返回值为true,代表有下一条记录。
  32. System.out.println(flag);
  33. int id = rs.getInt(1);
  34. int id1 = rs.getInt("id");
  35. System.out.println(id);
  36. System.out.println(id1);
  37. String username = rs.getString(2);
  38. String username1 = rs.getString("username");
  39. System.out.println(username);
  40. System.out.println(username1);*/
  41. while(rs.next()){
  42. int id = rs.getInt("id");
  43. String username = rs.getString("username");
  44. String password = rs.getString("password");
  45. String email = rs.getString("email");
  46. System.out.println(id+" "+username+" "+password+" "+email);
  47. }
  48. //只要Java程序跟任何设备进行了连接,用完之后必须释放资源。最简单基础班讲I/O流,Java跟文件进行了连接,用完之后关闭文件流。数据库也是一个设备。Java跟数据库连接上了用完之后也要关闭。必须把资源释放。
  49. //6.释放资源
  50. rs.close();//结果集得关
  51. st.close();
  52. con.close();
  53. //直接把con关闭了,数据库和程序断开了。但是statement和resultset没有及时释放,它还在内存存着。close()是释放和回收资源。
  54. //close()的顺序和进门出门是一样的,是进门的时候先进大门,出门的时候是最后才出大门
  55. //=============
  56. //Java可以操作数据库
  57. }
  58. }

 

day17-jdbc 5.url介绍

标签:编程   关闭   .com   解决   boolean   ima   区分   statement   mysql   

人气教程排行