1. 装载驱动程序
2. 建立与数据库的连接
3. 执行SQL语句
4. 获取执行结果
5. 清理资源
如上代码所示
三、java-jdbc中的Statement到底是什么,怎么理解?
首先,每一个连接数据库,就有一个Connection,然后此Connection有很多Statement,如果要与请求一次数据库,就要有一个Statement。
其次Statement的介绍
1,Statement 是 Java 执行数据库操作的一个重要方法,用于在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句。Statement对象,用于执行不带参数的简单SQL语句。
2,实际上有三种 Statement 对象,它们都作为在给定连接上执行 SQL语句的包容器:
(1),Statement、
(2),PreparedStatement(它从 Statement 继承而来)和
(3),CallableStatement(它从 PreparedStatement 继承而来)。
它们都专用于发送特定类型的 SQL 语句:
(1),Statement 对象用于执行不带参数的简单 SQL 语句;
(2),PreparedStatement 对象用于执行带或不带 IN参数的预编译 SQL 语句;
3,CallableStatement 对象用于执行对数据库已存储过程的调用。
4,Statement 接口提供了执行语句和获取结果的基本方法。
5 PreparedStatement 接口添加了处理 IN 参数的方法;
而CallableStatement 添加了处理 OUT 参数的方法。
四、No enclosing instance of type Main is accessible. Must qualify the allocation with an enclosing instance of type Main (e.g. x.new A() where x is an instance of Main).
出现这个错误的时候,我一直不太理解。
在借鉴别人的解释之后才恍然大悟。
在代码中,我的Dog类是定义在Main中的内部类。Dog内部类是动态的内部类,而我的main方法是static静态的。
就好比静态的方法不能调用动态的方法一样。
访问其他类中的内部类时,
有两种解决办法:
第一种:
将内部类Dog定义成静态static的类。
第二种:
将内部类Dog在Main类外边定义。