发表于: 2019-01-10 20:24:10
1 562
今天完成的事情:
1 任务一第17步:
完成了jdbc与数据库的连接以及增删改查:
package jdbc;
import java.sql.*;
public class MySQLDemo {
//JDBC驱动名及数据库 URL
static final String JDBC_DRIVER="com.mysql.jdbc.Driver";
static final String DB_URL="jdbc:mysql://localhost:3306/baoming?serverTimezone=GMT&useSSL = false";
//数据库的用户与密码,需要根据自己的位置
static final String USER="root";
static final String PASS="123456";
public static void main (String[] args){
Connection conn=null;
Statement stmt=null;
try{
//注册JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//打开连接
System.out.println("连接数据库...");
//数据库,用户,通过
conn= DriverManager.getConnection(DB_URL,USER,PASS);
//执行查询
System.out.println("实例化Statement对象...");
stmt=conn.createStatement();
String sql;
sql="SELECT id,name,qq FROM aoming_tbl";
ResultSet rs =stmt.executeQuery(sql);
//展开结果集数据库
// rs.next()即用来判断是否有下一行,如果有则执行循环体。而这里如果有下一行即查询表中每一行的数据
while(rs.next()){
//通过字段检索
/*
rs.getInt(int index);
rs.getString(String columName);
即你可以通过索引index或者列名String columName来获得查询结果集中的某一列的值,注意返回的是值。
*/
int id =rs.getInt("id");
String name=rs.getString("name");
int qq=rs.getInt("qq");
//输出数据
System.out.println("ID:"+id);
System.out.println(",姓名:"+name);
System.out.println("qq:"+qq);
System.out.println("\n");
}
//完成后关闭
rs.close();
stmt.close();
conn.close();
}
// catch(SQLException se){
// //处理JDBC错误
// se.printStackTrace();
// }catch (Exception e){
// //处理Class.forName错误
// e.printStackTrace();
// }
catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally{
//关闭资源
try{
if(stmt!=null)stmt.close();
}catch(SQLException se2){
}//什么都不做
try{
if(conn!=null)conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}
学会了如何调包:
通过pom.xml调包,然后再去maven中央仓库中找到需要的包 将相关内容复制到pom.xml中:
<dependencies>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.7-dmr</version>
</dependency>
</dependencies>
2多态:
意义:
同一类型的引用指向不同的对象,有不同的实现 ----行为的多态
同一对象被造型为不同类型时,有不同的功能----对象的多态
因为o1所指向的对象是Boo类型 而且o1也是Boo类型 所以符合3.1) 所以强转成功 返回true
2明天的计划:
1 写一个实体类来表示一张表
2通过jdbc编写dao
3基础学习
3遇到的问题:
1现在可以在网上找出相关代码并敲出来,大部分代码也可以看懂,但是要自己敲出来,还是做不到
收获:
1学习了 如何用jdbc连接数据库 以及增删改查
2温故了多态
评论