JDBC 实现 数据库的增删改查
2016-08-02 10:22
417 查看
没有 JDBC和ODBC 之前,访问不同数据库需要编写相应的数据库访问程序,ODBC 使得访问链接数据库的接口统一,访问不同数据库的 API 一致。
JDBC 是 Java Database Connector,JDBC API 主要供开发人员使用,JDBC Driver API 主要供底层 数据库 开发人员使用,用于设计与具体数据库的接口。
JDBC 实现的流程
加载驱动 —— 加载数据库驱动,一般是Class.forName方法实现;
打开链接 —— 开启数据库链接,参数包括数据库 URL 、Name 和 pwd;
执行查询 —— 执行数据库查询语句;
处理结果 —— 处理数据库查询结果;
清理环境 —— 清理数据库环境,依次关闭开启的 API;
下面将展示数据库 MySQL 和 Eclipse 下的 数据库对数据的 增删改查代码
JDBC 是 Java Database Connector,JDBC API 主要供开发人员使用,JDBC Driver API 主要供底层 数据库 开发人员使用,用于设计与具体数据库的接口。
JDBC 实现的流程
加载驱动 —— 加载数据库驱动,一般是Class.forName方法实现;
打开链接 —— 开启数据库链接,参数包括数据库 URL 、Name 和 pwd;
执行查询 —— 执行数据库查询语句;
处理结果 —— 处理数据库查询结果;
清理环境 —— 清理数据库环境,依次关闭开启的 API;
下面将展示数据库 MySQL 和 Eclipse 下的 数据库对数据的 增删改查代码
create table tbl_user( id int(11) unsigned not null auto_increment, name varchar(50) not null default '', password varchar(50) not null default '', email varchar(50) default '', primary key (id)) engine = InnoDB default charset = utf8; create table tbl_address( id int(11) unsigned not null auto_increment, city varchar(20) default null, country varchar(20) default null, user_id int(11) unsigned not null, primary key(id)) engine = innodb default charset = utf8; insert into tbl_user(id,name,password,email) values (1,'xiaoming','123456','xiaoming@gmail.com'), (2,'xiangzhang','123456','xiaozhang@gmail.com'); insert into tbl_address (city,country,user_id) values ('beijing','china',1); insert into tbl_address (city,country,user_id) values ('tianjin','china',2);
package jdbc_Pack_003; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /* jdbc 的执行顺序: 1.加载驱动 2.打开链接 3.执行查询 4.处理结果 5.清理环境 */ public class JDBC_Pack_003 { public static void main(String[] args) { String sql = "select * from tbl_user"; Connection conn = null; Statement st = null; ResultSet rs = null; try { // Class 和其他类一样继承自 Obj 类,不同的是 它还封装了 被封装到 JVM 之中的类的信息,类的成员变量, // 类的成员方法,类的实现接口或者父类 等等 // forName 用来初始化参数指定的类,并创建一个实例化对象 // 此处的参数 是 jdbc 中的 MySQL 的驱动程序 Class.forName("com.mysql.jdbc.Driver"); // localhost 是服务器主机,3360 是主机端口,test 是DB的名字 conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","1233211234567"); st = conn.createStatement(); rs = st.executeQuery(sql); while (rs.next()) { System.out.print(rs.getInt("id")+" "); System.out.print(rs.getString("name")+" "); System.out.print(rs.getString("email")+" "); System.out.println(); } } catch (Exception e) { // TODO: handle exception System.out.println(e.getMessage()); }finally{ try { rs.close(); st.close(); conn.close(); } catch (Exception e) { // TODO: handle exception System.out.println(e.getMessage()); } } } }
package jdbc_Pack_004; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class JDBC_Cls_004 { public static Connection getConnection(){ Connection connection = null; try{ Class.forName("com.mysql.jdbc.Driver"); connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/jsp_db","root","1233211234567"); } catch(Exception e){ e.printStackTrace(); } return connection; } public static void insert(){ Connection connection = getConnection(); try { String sql = "INSERT INTO tbl_user(name,password,email)VALUES('Tom','123456','tom@gmail.com')"; Statement statement = (Statement) connection.createStatement(); int count = statement.executeUpdate(sql); System.out.println("用户向表中插入了"+count+"条记录 !"); connection.close(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } public static void update(){ Connection connection = getConnection(); try { String sql = "UPDATE tbl_user SET email='tom@hotmail.com' WHERE name='Tom'"; Statement statement = (Statement) connection.createStatement(); int count = statement.executeUpdate(sql); System.out.println("用户向表中更新了"+count+"条记录 !"); connection.close(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } public static void delete(){ Connection connection = getConnection(); try { String sql = "DELETE FROM tbl_user WHERE name='Tom'"; Statement statement = (Statement) connection.createStatement(); int count = statement.executeUpdate(sql); System.out.println("用户向表中删除了"+count+"条记录 !"); connection.close(); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } public static void main(String []args) { // insert(); // update(); delete(); } }
相关文章推荐
- Spring与JDBC连接实现对数据库的增删改查
- jsp+servlet+jdbc实现对数据库的增删改查
- jsp+servlet+jdbc实现对数据库的增删改查
- jsp+servlet+jdbc实现对数据库的增删改查
- JSP + Servlet + JDBC实现对数据库的增删改查
- JDBC实现数据库的增删改查
- 【SQL】JDBC之运用dbutils组件实现对数据库的增删改查等操作
- jsp+servlet+jdbc实现对数据库的增删改查
- 纯Java JDBC连接数据库,且用JDBC实现增删改查的功能
- 关于SpringMVC与JDBC结合实现对数据库增删改查(适合初学者理解JDBC使用,但是对于SpringMVC框架使用了扫描,不太适合初学者)
- jdbc连接数据库及对数据库实现增删改查
- java通过jdbc连接数据库并在前端实现增删查改
- JDBC连接数据库并实现增删查改
- JDBC实现数据库的增删改查
- MySQL数据库学习笔记(十一)----DAO设计模式实现数据库的增删改查(进一步封装JDBC工具类)
- 通过jdbc实现对数据库中数据的增删查改操作
- JDBC实现数据库增删改查
- Java通过JDBC实现对数据库的增删查改(预编译方式)
- JDBC实现增删改查、模糊查询、分页查询、子查询以及体现单例设计模式连接数据库
- jsp+servlet+jdbc实现对数据库的增删改查