zoukankan      html  css  js  c++  java
  • 自己写了一个mysql连接的工具类【java】

    要用的话,包名自己可以改一下:

      1 package com.usa3v.dreamcenter.util;
      2 
      3 import java.sql.Connection;
      4 import java.sql.DriverManager;
      5 import java.sql.PreparedStatement;
      6 import java.sql.ResultSet;
      7 import java.sql.SQLException;
      8 
      9 public class MyDatabase {
     10     
     11     String url;
     12     String user;
     13     String password;
     14     
     15     Connection conn = null;
     16     PreparedStatement ps = null;
     17     ResultSet rs = null;
     18     
     19     /**
     20      * 构造需要一个数组
     21      * 该数组包含了三个信息
     22      * URL , user , password
     23      * @param str[]
     24      */
     25     
     26     public MyDatabase(String str[])
     27     {
     28         this.url = str[0];
     29         this.user = str[1];
     30         this.password = str[2];
     31     }
     32     
     33     /**
     34      * 生命周期:
     35      * connect连接数据库
     36      * 数据的其它操作
     37      * close关闭数据连接资源
     38      */
     39     
     40     public void connect()
     41     {
     42         try {
     43             System.out.println("加载驱动中...");
     44             Class.forName("com.mysql.cj.jdbc.Driver");
     45             System.out.println("驱动加载成功!");
     46             
     47             System.out.println("连接数据库中...");
     48             conn = DriverManager.getConnection(url, user, password);
     49             System.out.println("数据库连接成功!");
     50             
     51             
     52         } catch (Exception e) {
     53             e.printStackTrace();
     54         } finally {
     55             System.out.println("
    finally被调用,你必须手动"
     56                     + "调用该类的close()方法关闭资源,否则后果自负!
    ");
     57         }
     58         
     59     }
     60     
     61     /**
     62      * 增删改操作都可
     63      * @param sql
     64      */
     65     public void executeUpdate(String sql)
     66     {
     67         try {
     68             System.out.println("	执行sql语句:"+sql);
     69             ps = conn.prepareStatement(sql);
     70             ps.executeUpdate();
     71             System.out.println("	"+sql+"操作成功!");
     72         } catch (SQLException e) {
     73             System.out.println("	mysql语法错误!");
     74         }
     75     }
     76     
     77     /**
     78      * 查询某个记录是否存在
     79      */
     80     public byte isExist(String sql)
     81     {
     82         try {
     83             System.out.println("	查询中...");
     84             ps = conn.prepareStatement(sql);
     85             rs = ps.executeQuery();
     86             System.out.println("	查询结果已返回!");
     87             
     88             rs.next();
     89             
     90             if(rs.getString(1)!=null)
     91             {
     92                 System.out.println("	有结果");
     93                 return 1;
     94             }else {
     95                 System.out.println("	无结果1");
     96                 return 0;
     97             }
     98             
     99         } catch (SQLException e) {
    100             // TODO Auto-generated catch block
    101             //e.printStackTrace();
    102             System.out.println("	无结果2");
    103             return 0;
    104         }
    105     }
    106     
    107     /**
    108      * 返回整个结果集
    109      */
    110     public ResultSet getResultSet(String sql)
    111     {
    112         try {
    113             System.out.println("	结果集加载中...");
    114             ps = conn.prepareStatement(sql);
    115             rs = ps.executeQuery();
    116             System.out.println("	结果集加载成功!");
    117             return rs;
    118         } catch (SQLException e) {
    119             // TODO Auto-generated catch block
    120             e.printStackTrace();
    121             System.out.println("	结果集加载失败!");
    122             return null;
    123         }
    124     }
    125     
    126     public void close()
    127     {
    128         if(rs != null)
    129         {
    130             try {
    131                 rs.close();
    132             } catch (SQLException e) {
    133                 e.printStackTrace();
    134             }
    135         }
    136         if(ps != null)
    137         {
    138             try {
    139                 ps.close();
    140             } catch (SQLException e) {
    141                 e.printStackTrace();
    142             }
    143         }
    144         if(conn != null)
    145         {
    146             try {
    147                 conn.close();
    148             } catch (SQLException e) {
    149                 e.printStackTrace();
    150             }
    151         }
    152     }
    153 }
    View Code

    用的是新版mysql的jar包,所以驱动加载用com.mysql.cj.jdbc.Driver

    url例子:jdbc:mysql://localhost:3306/class?useSSL=false&serverTimezone=UTC

    用户名密码看自己的设置了

    目前是第一版,以后还会更新功能

    记得用的话必须调用类中的close方法关闭来释放资源

    程序宅男
  • 相关阅读:
    csrf & xss
    android_sqlite
    android_error
    oracle笔记
    android_lesson_1
    mysql 设置编码
    前端进阶Event
    前端进阶Position
    chrome插件开发资料
    dom4j selectNodes
  • 原文地址:https://www.cnblogs.com/dreamcenter/p/12252866.html
Copyright © 2011-2022 走看看