发表于: 2017-08-08 23:40:27
1 962
今天完成的事
1.在昨天成功连接到数据库的基础上,更深入的了解了关于数据库的连接,代码如下
import java.sql.*;
public class FirstExample {
// jebc的连接
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/EMP?";
// 账号密码
static final String USER = "root";
static final String PASS = "123";
public static void main(String[] args) {//main
Connection conn = null;
Statement stmt = null;//执行sql语句的对象
try{
Class.forName("com.mysql.jdbc.Driver");//加载数据库
System.out.println("Connecting to database...");//输出语句
conn = DriverManager.getConnection(DB_URL,USER,PASS);//链接数据库
System.out.println("Creating statement...");//输出
stmt = conn.createStatement();//对 Statement执行sql语句,其实就是对这个执行的。。
String sql;
sql = "SELECT id, first, last, age FROM Employees";//查询数据的语法
ResultSet rs = stmt.executeQuery(sql);//把查询到的数值导入一个数组
while(rs.next()){
int id = rs.getInt("id");
int age = rs.getInt("age");
String first = rs.getString("first");
String last = rs.getString("last");
System.out.print("ID: " + id);
System.out.print(", Age: " + age);
System.out.print(", First: " + first);
System.out.println(", Last: " + last);
}
rs.close();
stmt.close();
conn.close();//关闭对数据库的链接
//往下都是连接失误该怎么办,我先不记了
}catch(SQLException se){
se.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}finally{
try{
if(stmt!=null)
stmt.close();
}catch(SQLException se2){
}
try{
if(conn!=null)
conn.close();
}catch(SQLException se){//其实没用到的
se.printStackTrace();
}//end finally try
}//end try
System.out.println("There are so thing wrong!");
}//end main
}//end FirstExample
在此我了解到的代码有
1).
Statement stmt=conn.createStatement();//连接数据库时,要获取一个可以执行sql语句的对象
statement是java是 Java 执行数据库操作的一个重要接口,用于在已经建立数据库连接的基础上,向数据库发送要执行的简单SQL语句。
接口是一系列方法的声明
coon是之前连接数据的Connection对象
而createStatement()创建了一个对象然后去通过对象调用executeQuery方法来执行sql语句。关于createStatement()方法的应用下附参考资料http://blog.csdn.net/u011161786/article/details/48394751.
2).try{ }catch{Exception e}{ }是一个对程序异常部分的捕捉,也是对维护程序必不可少的语句,JAVA中由于安全性的强调 所以许多方法必须抛出异常才能在编译的时候
在try的部分编译的内容出现异常时,将异常信息抛到catch{Exception e}{ }中,Exception e即出现的异常。
明天的任务
1.接着把剩下的jdbc基础语句学完,不过疑惑的一点是在任务里提到的,什么是分离Interface和Imple,本打算今天去入门Mybatis但不知道是自己悟性低还是其他的原因,总觉得进度稍微有点慢了
遇到的问题:dbc:mysql://localhost:3306/数据库名称?里并未指向mysql中的连接,但是在mysql里面可以建立复数的连接,不太清楚这段语句是怎么指向需要连接的数据库的
收获:对代码更熟悉了,也不像前几天的时候,看到代码就是一脸懵逼,现在已经能读懂一些简单的代码了,正在恶补关于java的基础语法
评论