JDBC与连接池
来源:互联网 发布:学编程需要什么条件 编辑:程序博客网 时间:2024/06/08 16:29
8.7总结
1.JDBC编程步骤(首先要记得导包,bulid path)
(1)、加载JDBC驱动程序
Class.forName(“com.mysql.jdbc.Driver”)
(2)、提供JDBC连接的url跟用户名、密码
String url=”jdbc:mysql://localhost:3306/数据库名”;(3306为端口号)
String username=”用户名”;
String password=”密码”;(3)、创建数据库的链接
Connection conn = DriverManager.getConnection(url,username,password);
(4)、创建Statement或PreparedStatement对象,获得sql语句执行平台(preparedStatement接口可预编译sql语句,使用?占位符)
a、使用Connection对象创建一个Statement对象
Statement stmt = conn.createStatement( )。
b、使用Connection对象创建一个PreparedStatement对象
PreparedStatement pstmt = conn.prepareStatement(String sql)(5)、执行sql语句
单条插入
String sql=stmt.executeUpdate(“insert into 表名(字段名1,字段名2…) values(值1,值2…)”);
多条插入
String sql=”insert into 表名(字段名1,字段名2…) values(值1,值2…)”;
String sql1=”insert into 表名(字段名1,字段名2…) values(值1,值2…)”;
stmt.addBanch(sql);
stmt.addBatch(sql1);
stmt.executeBatch();
查询
ResultSet rs=stmt.executeQuery(“select * from 表名”若第四步创建了preparedStatement对象,可直接在创建对象的时候就将sql语句写上。如果sql语句中包含参数,可在单引号中加入双引号与两个加号,加号中间写参数名
(6)、处理结果(执行查询得到的结果集)
while(rs.next()){
System.out.println(rs.get数据类型(“字段名1”)+” “+rs.get数据类型(“字段名2”));
}(7)、关闭JDBC对象,释放资源(先打开的后关闭)
rs.close();
stmt.close();或pstmt.close( );
conn.close();
2.完整代码
(1)抛出异常
import java.sql.*;
public class JDBCDemo{
public static void main(String[] args)throws Exception{
//1、注册驱动
Class.forName(“com.mysql.jdbc.Driver”);
//2、建立连接
String url=”jdbc:mysql://localhost:3306/数据库名”;
String username=”root”;
String password=”root”;
Connection conn=DriverManager.getConnection(url,username,password);
//3、获得sql语句执行平台
Statement stmt=conn.createStatement();
//4、执行sql语句
String sql=stmt.executeUpdate(“insert into 表名(字段名1,字段名2…) values(值1,值2…)”);
ResultSet rs=stmt.executeQuery(“select * from 表名”);
//5、处理结果集
while(rs.next()){
System.out.println(rs.get数据类型(“字段名1”)+” “+rs.get数据类型(“字段名2”));
}
rs.close();
stmt.close();
conn.close();
}
}
(2)捕获异常
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ClassNotFoundException;
import java.sql.SQLException;
public class JDBCDemo{
public static void main(String[] args){
Connection conn=null;
Statement stat=null;
try{
Class.forName(“com.mysql.jdbc.Driver”);
String url=”jdbc:mysql://localhost:3306/数据库名”;
String username=”root”;
String password=”root”;
conn=DriverManager.getConnection(url,username,password);
stmt=conn.createStatement();
//执行单条插入
String sql=”insert into 表名(字段名1,字段名2…) values(值1,值2…)”;
stmt.executeUpdate(sql);
/*执行多行插入
String sql=”insert into 表名(字段名1,字段名2…) values(值1,值2…)”;
String sql1=”insert into 表名(字段名1,字段名2…) values(值1,值2…)”;
stmt.addBanch(sql);
stmt.addBatch(sql1);
stmt.executeBatch();
*/
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}finally{
try{
if(stmt!=null){
stmt.close();
}
if(conn!=null){
con.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
}
}
- JDBC与连接池
- JDBC与连接池
- JDBC与连接池
- [转]JDBC与连接池
- JDBC与Hibernate连接池
- JDBC连接池与数据源学习总结
- 连接池,元数据与jdbc框架
- 【JDBC详解】连接池与分页
- jdbc与SQLServer连接
- jdbc 与 mysql连接
- MySQL与JDBC连接
- JDBC连接与关闭
- JDBC与mySQL连接
- 数据库的连接与JDBC
- JDBC与Oracle的连接
- hibernate连接与JDBC连接的区别
- jdbc连接mysql5与连接mysql6
- JDBC的连接池与数据源的区别及性能
- ijkPlyer学习 ------ 环境配置
- JSON与XML的区别比较(非常全面)
- android 打造可复用的底部dialog
- 操作系统中并发(concurrent)与并行(Parallel )的区别与联系
- Codeforces 437C The Child and Toy 简单图论贪心
- JDBC与连接池
- selinux的配置
- C程序崩溃的常见原因
- uva 12325 Zombie's Treasure Chest
- 建造者模式——设计模式之创建型
- Keras源码分析之常用网络层
- 面向对象基础
- hdu3658 How many words 矩阵递推分析
- Ant学习笔记(一)-Ant入门