1 import java.sql.Connection;
2 import java.sql.DriverManager;
3 import java.sql.ResultSet;
4 import java.sql.Statement;
5
6 /**
7 * Created by BoGummyYoung on 2017/4/6.
8 */
9 public class ConnMySql
10 {
11 public static void main(String[] args) throws Exception
12 {
13 //1.加载驱动,使用反射知识,现在记住这么写
14 Class.forName("com.mysql.jdbc.Driver");
15 try(
16 //2.使用DriverManager获取数据库连接
17 //其中返回的Connection就代表了Java程序和数据库的连接
18 //不同数据库的URL写法需要查驱动文档,用户名、密码由DBA分配
19 Connection conn = DriverManager.getConnection(
20 "jdbc:mysql://localhost:3306/select_test"
21 ,"root","bogummy");
22 //3.使用Connection来创建一个Statement对象
23 Statement stmt = conn.createStatement();
24 //4.执行SQL语句
25 /*
26 Statement 有三种执行SQL语句的方法:
27 1.execute()可执行任何SQL语句——返回一个boolean值
28 如果执行后第一个结果是ResultSet,则返回true,否则返回false
29 2.executeQuery()执行select语句——返回查询到的结果集
30 3.executeUpdate()用于执行DML语句——返回一个整数
31 代表被SQL语句影响的记录条数
32 */
33 ResultSet rs = stmt.executeQuery("select s.*, teacher_name"
34 +" from student_table s , teacher_table t"
35 +" where t.teacher_id = s.java_teacher"))
36 {
37 //ResultSet有一系列的getXxx(列索引 | 列名)方法,用于获取记录指针
38 //指向行、列特定的值,不断地使用next()将记录指针下移一行
39 //如果移动之后记录指针依然指向有效行,则next()方法返回true
40 while(rs.next())
41 {
42 System.out.println(rs.getInt(1) + "\t"
43 + rs.getString(2) + "\t"
44 + rs.getString(3) + "\t"
45 + rs.getString(4) + "\t");
46 }
47 }
48 }
49 }