1.数据库的准备
create table account(
id int primary key auto_increment,
name varchar(40),
money float
)character set utf8 collate utf8_general_ci;
insert into account(name,money) values('aaa',1000);
insert into account(name,money) values('bbb',1000);
insert into account(name,money) values('ccc',1000);
2.jdbc实现查询
package com.hh.jdbc;
import java.sql.*;
public class JDBCDemo1 {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
//1.注册驱动
//DriverManager.registerDriver(new com.MysqL.jdbc.Driver());
Class.forName("com.MysqL.jdbc.Driver");
//2.获取连接
conn = DriverManager.getConnection("jdbc:MysqL://localhost:3306/spring","root","123");
//3.获取操作数据库的预处理对象
String sql = "select * from account";
ps= conn.prepareStatement(sql);
//4.执行结果,得到结果集
rs=ps.executeQuery();
//5.遍历结果集
while (rs.next()){
System.out.println(rs.getString("name"));
}
} catch (ClassNotFoundException e) {
e.printstacktrace();
} catch (sqlException e) {
e.printstacktrace();
} finally {
//6.释放资源
if(rs!=null){
try {
rs.close();
} catch (sqlException e) {
e.printstacktrace();
}
}
if(ps!=null){
try {
ps.close();
} catch (sqlException e) {
e.printstacktrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (sqlException e) {
e.printstacktrace();
}
}
}
}
}
3.分析出现的问题:
1.耦合:
程序键的依赖关系
2.包括:
类之间的依赖关系
方法之间的依赖关系
3.实际开发中:
应该做到编译期不依赖,运行期依赖
4.解耦的思路:
第一步:使用反射创建对象,从而避免new关键字
第二步:通过配置文件来获取创建对象的全限定类名
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。