首先我要连接的是MySQL数据库
所以要先准备好连接MySQL数据库的驱动jar包,如果是其他数据库则要准备好其他数据库的驱动jar包(可在网上下载),驱动是必须要有的,如果没有驱动则连接不了数据库,会报错,触发ClassNotFoundException异常
然后准备好4个参数:第一个变量username是要连接的数据库的用户名,第二个变量password是要连接的数据库的用户密码,第三个变量url是地址路径,其中mysql是代表我要连接MySQL数据库,localhost代表本地连接(也可使用IP地址),3306是MySQL数据库的端口号,test是要连接的数据库名,代表我要连接test数据库,第四个变量是要加载的驱动
private static String username = "root";
private static String password = "root";
private static String url = "jdbc:mysql://localhost:3306/test";
private static String driver = "com.mysql.jdbc.Driver";
然后可以开始连接数据库了,下面以查询test表为例:
第一步,加载驱动:
Class.forName(driver);
第二步,通过DriverManager类下面的getConnection()方法获取数据库连接,返回的是一个Connection,所以此处用一个Connection来接收,注意此处的Connection引用的是Java.sql.Connection包而不是com.mysql.jdbc包,千万别引错包
Connection con = DriverManager.getConnection(url, username, password);
第三步,获取Statement对象或者prepareStatement对象
Statement st = con.createStatement();
第四步,执行SQL语句 ,executeUpdate()方法或者executeQuery()方法 ,新增、修改、删除语句使用executeUpdate()方法执行,返回int;查询语句使用executeQuery()方法执行,返回一个ResultSet结果集
ResultSet rs = st.executeQuery("select * from test");
while(rs.next()){
//循环输出,int类型就用getInt()方法,String类型就用getString()方法,方法中的参数是数据库中的列名
System.out.println("id: " + rs.getInt("userid") + " username: " + rs.getString("username"));
}
第五步,关闭资源con/st/rs :
rs.close();
st.close();
con.close();
执行完毕输出结果如下: