package com.shelly.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import com.mysql.jdbc.Driver; public class Demo1 { /** * @param args * @throws SQLException */ public static void main(String[] args) throws SQLException { // 1.注册数据库驱动 DriverManager.registerDriver(new Driver()); // 2.获取数据库连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/blog", "root", "root"); // 3.获取传输器对象 Statement stat = conn.createStatement(); // 4.利用传输器传输sql语句到数据库中执行,获取结果集对象 ResultSet rs = stat.executeQuery("select * from user"); // 5.遍历结果集获取查询结果 while(rs.next()){ String username = rs.getString("username"); System.out.println(username); } // 6.关闭资源 rs.close(); stat.close(); conn.close(); } }缺点: DriverManager.registerDriver(new Driver());//缺点一:由于mysql的Driver源码本身已经注册过一次,导致了数据库驱动被注册了两次。缺点二:整个程序域mysql数据库驱动绑定增加了耦合性,程序和具体的mysql驱动绑死在一起,在切换数据库时需要改动java代码,不够灵活。 方法二:
package com.shelly.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import com.mysql.jdbc.Driver; public class Demo1 { /** * @param args * @throws SQLException * @throws ClassNotFoundException */ public static void main(String[] args) throws SQLException, ClassNotFoundException { // 1.注册数据库驱动 //DriverManager.registerDriver(new Driver()); Class.forName("com.mysql.jdbc.Driver"); // 2.获取数据库连接 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/blog", "root", "root"); // 3.获取传输器对象 Statement stat = conn.createStatement(); // 4.利用传输器传输sql语句到数据库中执行,获取结果集对象 ResultSet rs = stat.executeQuery("select * from user"); // 5.遍历结果集获取查询结果 while(rs.next()){ String username = rs.getString("username"); System.out.println(username); } // 6.关闭资源 rs.close(); stat.close(); conn.close(); } }
优点:Class.forName(“com.mysql.jdbc.Driver”);//代替DriverManager,可以查找是否已有注册数据库驱动,所以只会注册一次。关联字符串,可以将字符串放在配置文件中,在切换数据库时就不需要改动java代码了。
Tip: 数据库URL:URL用于标识数据库的位置,程序员通过URL地址告诉JDBC程序连接哪个数据库。 常用数据库URL地址的写法: Oracle写法:jdbc:oracle:thin:@localhost:1521:sid SqlServer—jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=sid MySql—jdbc:mysql://localhost:3306/sid Mysql的url地址的简写形式: jdbc:mysql:///sid 常用属性:useUnicode=true&characterEncoding=UTF-8
原文地址:https://www.cnblogs.com/shelly0307/p/10392824.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。