• JDBC 技术开发


    JDBC 开发:2018-05-21

    作用:用Java语句向数据库发送请求并操作数据库。

    简介:

    练习:

    数据库创建代码:

    create database day14;
             use day14 ;
             create table users(
             
             id int primary key,
             name varchar(40),
             password varchar(40),
             email varchar(60),
             birthday date
             );
    insert into users(id,name,password,email,birthday) values(1,'zs','123456','zs@sina.com','1980-12-04');
    insert into users(id,name,password,email,birthday) values(2,'lisi','123456','lisi@sina.com','1981-12-04');
    insert into users(id,name,password,email,birthday) values(3,'wangwu','123456','wangwu@sina.com','1979-12-04');

     在程序中进行获取数据库的数据代码如下:

     1 package day14;
     2 
     3 import java.sql.Connection;
     4 import java.sql.DriverManager;
     5 import java.sql.ResultSet;
     6 import java.sql.SQLException;
     7 import java.sql.Statement;
     8 
     9 
    10 public class Demo1 {
    11     /*
    12 create database day14;
    13          use day14 ;
    14          create table users(
    15          
    16          id int primary key,
    17          name varchar(40),
    18          password varchar(40),
    19          email varchar(60),
    20          birthday date
    21          );
    22 insert into users(id,name,password,email,birthday) values(1,'zs','123456','zs@sina.com','1980-12-04');
    23 insert into users(id,name,password,email,birthday) values(2,'lisi','123456','lisi@sina.com','1981-12-04');
    24 insert into users(id,name,password,email,birthday) values(3,'wangwu','123456','wangwu@sina.com','1979-12-04');
    25      */
    26     
    27     public static void main(String[] args) throws SQLException {
    28         String url="jdbc:mysql://localhost:3306/day14";
    29         String username="root";
    30         String password="999909";
    31         
    32         
    33         //1.加载驱动
    34         DriverManager.registerDriver( new com.mysql.jdbc.Driver());
    35         
    36         //2.获得数据库链接
    37     Connection conn = DriverManager.getConnection(url, username, password);
    38         
    39         //3.获取向数据库发数据的statament对象,
    40         
    41     Statement st= conn.createStatement();
    42         //4.向数据库发送sql,获取数据库返回的结果集
    43         
    44 
    45     ResultSet rs=st.executeQuery("select * from users");
    46         //5.从结果集中获取数据,
    47         while (rs.next()){
    48         System.out.println("id:"+rs.getObject("id"));    
    49             System.out.println("name:"+rs.getObject("name"));
    50             System.out.println("password:"+ rs.getObject("password"));
    51             System.out.println("email:" +rs.getObject("email"));
    52             System.out.println("birthday:"+rs.getObject("birthday"));
    53         }
    54         
    55         
    56         //6.释放资源(释放链接)释放的结果与创建的顺序相反。
    57         rs.close();
    58         st.close();
    59         conn.close();
    60         
    61     }
    62 
    63 }

    JDBC过程详解:

    解决drivemanager的方法:

    加载驱动的方法:classForname("com.mysql.jdbc.Driver");

    来直接加载类,加载类时可以直接创建新的驱动。

    小注:当加载类驱动时,需要利用配置文件来实现数据库驱动的加载,其中两种常用的方法为:

    1. 若配置的数据有关系就利用xml文件来加载加载驱动。

    2.若配置的数据没有关系就利用properties来加载驱动。

     数据库URL:

    程序详解:connection:

     

    statement:程序详解:

    常用的数据类型转换表:

     

    程序详解:链接释放

    程序详解--释放资源:

     

     使用JDBC对数据库进行CRUD:

     

     联系代码如下:

      1 package day14;
      2 
      3 
      4 import java.sql.Connection;
      5 import java.sql.ResultSet;
      6 import java.sql.SQLException;
      7 import java.sql.Statement;
      8 
      9 import org.junit.Test;
     10 
     11 import cn.itcast.utils.JdbcUtils;
     12 
     13 
     14 public class Demo2 {
     15 
     16 
     17     
     18     @Test
     19     public void insert() throws SQLException{
     20         
     21         Connection conn=null;
     22         Statement st=null;
     23         ResultSet rs=null;
     24         System.out.println("1");
     25 
     26         try{
     27         conn = JdbcUtils.getconnection();
     28         System.out.println("2");
     29 
     30         st= conn.createStatement();
     31         String sql="insert into users(id,name,password,email,birthday) values(4,'eee','123','ee@sina.com','1998-09-09')";
     32         System.out.println("3");
     33             int num= st.executeUpdate(sql);
     34             
     35             if(num>0){
     36                 System.out.println("插入成功");
     37             }
     38         }finally{
     39             JdbcUtils.relesase(conn, st, rs);
     40             
     41         }
     42         
     43     }
     44 
     45     
     46     @Test
     47     public void update() throws SQLException{
     48         Connection conn=null;
     49         Statement st=null;
     50         ResultSet rs=null;
     51         try{
     52         conn = JdbcUtils.getconnection();
     53         st=conn.createStatement();
     54         String sql="update users set name='fff' where id='4'";
     55          int num=st.executeUpdate(sql);
     56          if(num>0){
     57              System.out.println("更新成功!!");
     58              
     59          }
     60         
     61             
     62         }finally{
     63             JdbcUtils.relesase(conn, st, rs);
     64             
     65         }
     66         
     67     }
     68     
     69     @Test
     70     public void delete() throws SQLException{
     71         Connection conn=null;
     72         Statement st=null;
     73         ResultSet rs=null;
     74         try{
     75         conn = JdbcUtils.getconnection();
     76         st=conn.createStatement();
     77         String sql="delete from users where id='4'";
     78          int num=st.executeUpdate(sql);
     79         if(num>0){
     80             System.out.println("删除成功!!");
     81             
     82         }
     83             
     84         }finally{
     85             JdbcUtils.relesase(conn, st, rs);
     86             
     87         }
     88         
     89     }
     90     @Test
     91     public void find() throws SQLException{
     92         Connection conn=null;
     93         Statement st=null;
     94         ResultSet rs=null;
     95         try{
     96         conn = JdbcUtils.getconnection();
     97         st=conn.createStatement();
     98         String sql="select * from users";
     99         rs=st.executeQuery(sql);
    100         while (rs.next()){
    101             System.out.println("id:"+rs.getObject("id"));    
    102                 System.out.println("name:"+rs.getObject("name"));
    103                 System.out.println("password:"+ rs.getObject("password"));
    104                 System.out.println("email:" +rs.getObject("email"));
    105                 System.out.println("birthday:"+rs.getObject("birthday"));
    106             }
    107             
    108         }finally{
    109             JdbcUtils.relesase(conn, st, rs);
    110             
    111         }
    112         
    113     }
    114     @Test
    115     public void getAll() throws SQLException{
    116         Connection conn=null;
    117         Statement st=null;
    118         ResultSet rs=null;
    119         try{
    120         conn = JdbcUtils.getconnection();
    121         st=conn.createStatement();
    122         String sql="select id,name,password,email,birthday from users";
    123             rs=st.executeQuery(sql);
    124             while (rs.next()){
    125                 System.out.println("id:"+rs.getObject("id"));    
    126                     System.out.println("name:"+rs.getObject("name"));
    127                     System.out.println("password:"+ rs.getObject("password"));
    128                     System.out.println("email:" +rs.getObject("email"));
    129                     System.out.println("birthday:"+rs.getObject("birthday"));
    130                 }
    131         
    132         }finally{
    133             JdbcUtils.relesase(conn, st, rs);
    134             
    135         }
    136         
    137     }
    138 }

         工厂设计模式:

  • 相关阅读:
    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第15章节--开发SP2013工作流应用程序 总结
    OpenStreetMap初探(一)——了解OpenStreetMap
    企业服务总线架构介绍
    【Stackoverflow好问题】java在,如何推断阵列Array是否包括指定的值
    C和指针 (pointers on C)——第一章:高速启动
    类别sort使用排序
    [Oracle]
    4点,从今天谈用户体验设计经验京东亚马逊购物
    从[java.lang.OutOfMemoryError: Java heap space]恢复
    C++学习笔记32 断言函数
  • 原文地址:https://www.cnblogs.com/shuai9999/p/9069028.html
Copyright © 2020-2023  润新知