《一个菜逼Android的J2EE的心酸路》JavaWeb之JDBC (一)
来源:互联网 发布:纳贝调试软件 编辑:程序博客网 时间:2024/05/18 03:29
新人学习javaweb,为了更好的学习,决定写一些笔记记录一下,同时也督促一下自己。
JDBC是什么?
JDBC是一种规范,它提供的接口,一套完整的,允许便携式访问底层数据库。可以用Java来写不同类型的可执行文件
JDBC的都能做哪些事情?
连接到数据库
创建SQL或MySQL语句
执行SQL或MySQL的查询数据库
查看和修改结果记录
JDBC架构:
JDBC API支持两层和三层处理模型进行数据库访问,但在一般的JDBC体系结构由两层组成:
JDBC API: 提供了应用程序对JDBC的管理连接。
JDBC Driver API: 支持JDBC管理到驱动器连接。
JDBC API的使用驱动程序管理器和数据库特定的驱动程序提供透明的连接到异构数据库。
JDBC驱动程序管理器可确保正确的驱动程序来访问每个数据源。该驱动程序管理器能够支持连接到多个异构数据库的多个并发的驱动程序。
以下是结构图,它显示了驱动程序管理器方面的JDBC驱动程序和Java应用程序的位置:
常见的JDBC组件:
DriverManager 字面上的意思 一个驱动的管理者 ,用来管理Driver
Driver 主要处理与数据库的通信
Connection 与数据库建议连接
Statement 可以使用这个接口创建的对象的SQL语句提交到数据库
ResultSet: Statement执行的结束返回在这里。
SQLException 这个类处理发生在一个数据库应用程序的任何错误。
简单的JDBC示例
根据以上的的内容我们对JDBC有了简单的了解,下面我们编些一个简单jdbc的例子
(在此之前你必须导入一下JDBC的包)
下面是一个简单的列子 和一个流程的介绍
这是一个最基本的JDBC例子需要注意的是 释放资源的时候 一定要先从ResultSet Statement Connection依次关闭 (注意优先级)
当然这个例子还有很多不严谨的地方。
SQLException: 这个类处理发生在一个数据库应用程序的任何错误。DriverManager 字面上的意思 一个驱动的管理者 ,用来管理Driver
然后我们再来终结一下使用JDBC的步骤
1.注册驱动(只注册一次)
2.建立连接(Connection)
3.创建执行SQL的语句(Statement)
4.执行SQL语句
5.处理执行结果(ResultSet)
6.释放资源
接下来你需要了解一下
1. 注册jdbc驱动程序的三种方式
2. 常用数据库 JDBC URL 格式
最后我们用规范的写法写一下
public class JdbcUtils { //数据库用户名 private static final String USERNAME = "root"; //数据库密码 private static final String PASSWORD = "123456"; //驱动信息 private static final String DRIVER = "com.mysql.jdbc.Driver"; //数据库地址 private static final String URL = "jdbc:mysql://localhost:3306/mydb"; private Connection connection; private PreparedStatement pstmt; private ResultSet resultSet; public JdbcUtils() { // TODO Auto-generated constructor stub try{ Class.forName(DRIVER); System.out.println("数据库连接成功!"); }catch(Exception e){ } } /** * 获得数据库的连接 * @return */ public Connection getConnection(){ try { connection = DriverManager.getConnection(URL, USERNAME, PASSWORD); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return connection; } /** * 释放数据库连接 */ public void releaseConn(){ if(resultSet != null){ try{ resultSet.close(); }catch(SQLException e){ e.printStackTrace(); } } } }
- 《一个菜逼Android的J2EE的心酸路》JavaWeb之JDBC (一)
- android入门之安装的心酸之路
- 一个心酸的电话
- JavaWeb之JDBC(一)
- 菜鸟安装android NDK的心酸路
- 一个Android开发妹子的找工作心酸史
- 心酸的找工作之旅
- 一个低学历php程序员的苦逼之路
- J2EE的核心技术之JDBC简介篇
- J2EE的13个规范之JDBC
- 菜逼的Unity学习之路(四)
- 一个JavaWeb工程师的进阶之路
- 菜逼的Android旅程
- 一个寒门学子的心酸日记
- 一个女程序员的心酸和无奈!
- 一个女程序员的心酸和无奈!
- 一个让人看了心酸、落泪的故事
- 一个女程序员的心酸和无奈
- 提高mapreduce性能的七点建议
- javascript是单线程的吗?
- 反射中,Class.forName和ClassLoader.loadCalss方法的区别
- ABAP 固定资产报废的BAPI
- iOS 导航栏创建多个Button
- 《一个菜逼Android的J2EE的心酸路》JavaWeb之JDBC (一)
- PHP二维数组排序函数
- 全球第二大消费性数位板品牌——绘王Huion
- PHP转义字符
- CSDN 如何转载别人的文章
- Linux-重定向输出>和>>
- 《深入理解Java虚拟机》读书笔记2
- Hyper-v虚拟机的网络和文件共享
- 关于sitemesh框架的学习