使用jdbc操作数据的步骤
1、准备好数据库 可以自己命名 可以使用客户端插入相关数据
创建一个user表
CREATE TABLE user
(
id
int(11) NOT NULL auto_increment,
username
varchar(32) NOT NULL COMMENT '用户名称',
birthday
datetime default NULL COMMENT '生日',
sex
char(1) default NULL COMMENT '性别',
address
varchar(256) default NULL COMMENT '地址',
PRIMARY KEY (id
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2、首先创建好工程 这里采用maven工程 因为自己导入jar包太麻烦
3、在pom.xml文件中导入相应的坐标
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
4、导入日志文件
5、创建演示类 随便命名
接下来就是操作数据库的过程
1)加载jdbc驱动
2)通过驱动获取数据库连接
3)书写sql语句
4) 使用连接创建statement对象
5)利用对象执行sql语句 返回相应的结果
6)遍历结果集对象
7)关闭相应的资源
public class JdbcDemo {
public static void main(String[] args) {
Connection connection = null;
Statement statement = null;
ResultSet result = null;
//1、加载驱动
try {
Class.forName("com.mysql.jdbc.Driver");
//2、通过驱动获取数据库连接
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mybatis_day01","root","root");
//3、写sql语句
String sql = "select * from user";
//4、创建statement对象 并设置相应的值
statement = connection.createStatement();
//5、执行sql语句 返回处理结果
result = statement.executeQuery(sql);
//6、遍历结果集
while(result.next()){
System.out.println(result.getString("id")+":"+result.getString("username"));
}
} catch (Exception e) {
e.printStackTrace();
}finally {
//7、释放资源
if(result!=null){
try {
result.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(connection!=null){
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(statement!=null){
try {
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
存在的问题:
1)数据库连接频繁的创建会影响系统的性能
2)sql语句在代码中硬编码 实际的sql变化可能较大 所以使用这种方式不易维护