JDBC连接
来源:互联网 发布:淘宝主图视频上传过程 编辑:程序博客网 时间:2024/06/01 08:05
JDBC全称是Java DataBase Connectivity,即数据库连接,提供数据库的统一访问,是一组用java编写的类和接口,是java访问数据库的标准规范,可以说是用于执行SQL语句的Java API。我们编写了程序,如何操作数据库呢,这里就不得不用JDBC。
【JDBC的原理】
JDBC是接口,驱动是接口的实现,提供访问数据库规范,生产厂商提供规范的实现类称为驱动。没有驱动将无法完成数据库连接,从而不能操作数据库!每个数据库厂商都需要提供自己的驱动,用来连接自己公司的数据库,也就是说驱动一般都由数据库生成厂商提供。例如MySQL数据库和Oracle数据库提供了驱动,我们就可以通过JDBC来连接相应的数据库了。
【JDBC开发步骤】
- 注册驱动.
- 获得连接.
- 获得语句执行平台.
- 执行sql语句.
- 处理结果.
- 释放资源.
【JDBCUtils工具类】
“获得数据库连接”操作,将在以后的增删改查所有功能中都存在,可以封装工具类JDBCUtils。提供获取连接对象的方法,从而达到代码的重复利用。
public class JDBCUtil {private JDBCUtil(){}//构造方法私有不能new创建对象private static String driverClass;private static String url;private static String username;private static String password;private static Connection con;static {try{getDatabase();Class.forName(driverClass);con=DriverManager.getConnection(url, username, password);}catch(Exception ex){throw new RuntimeException(ex.getMessage()+"数据库链接失败");}}private static void getDatabase() throws IOException, SQLException{InputStream in = JDBCUtil.class.getClassLoader().getResourceAsStream("database.properties");Properties pro=new Properties();pro.load(in);in.close();driverClass=pro.getProperty("driverClass");url=pro.getProperty("url");username=pro.getProperty("username");password=pro.getProperty("password");}public static Connection getConnection(){return con;}public static void close(Connection con,Statement state,ResultSet rs){if(con!=null){try{con.close();}catch(Exception ex){System.out.println(ex);}}if(state!=null){try{state.close();}catch(Exception ex){System.out.println(ex);}}if(rs!=null){try{rs.close();}catch(Exception ex){System.out.println(ex);}}}}
【小结】
JDBC给我们提供了程序访问数据库的接口,是程序和数据库交流的桥梁。它提供了访问的共有方法,如果想更加方便的操作数据,还有DBUtils工具类和DBCP连接池,能更加简洁访问数据库。当然也是需要借助第三方jar包的,下一篇博客将详细介绍更加简便的操作数据库返回值的处理。
0 0
- jdbc连接
- JDBC连接
- JDBC连接
- JDBC连接
- jdbc连接
- jdbc连接
- jdbc连接
- JDBC连接
- JDBC连接
- jdbc连接
- jdbc连接
- JDBC连接
- jdbc连接
- JDBC连接
- JDBC连接
- JDBC连接
- JDBC 连接
- jdbc连接
- gen_sctp:connect/2
- Oracle client 11.2/12连接服务器12c报错ORA-28040问题解决方法
- 数组在表达式中解释为指针的规则受抑制的三种情况
- 第六十七天学习笔记
- PCA9685 16路12位pwm信号发生器
- JDBC连接
- 第六届蓝桥杯【省赛试题9】垒骰子 ( 矩阵快速幂 )
- Redis学习之构建数据服务详解
- Linux模块编程框架
- Linux Make 命令
- 《linux多线程服务端编程muduo网络库的使用》读后感
- logback使用与解析
- 最长回文数2
- Gradle 1.12用户指南翻译——第五十章. 依赖管理