Heim >Datenbank >MySQL-Tutorial >JDBC数据库编程操作类(适用于MySQL)_MySQL

JDBC数据库编程操作类(适用于MySQL)_MySQL

WBOY
WBOYOriginal
2016-06-01 13:08:04911Durchsuche

package com.msit.Uitll;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * 数据库帮助类 连接MySQL数据库
 *
 * @author ruanj_000
 *
 */
public class SQLHelp {

      private static String dirverName = "com.mysql.jdbc.Driver";
      private static String url = "jdbc:mysql://127.0.0.1:3306/misidb";
      private static String user = "root";
      private static String password = "root";
      private static Connection connection = null;

 // 编写静态代码块(比构造函数加载更快),用来加载驱动类
 static {
  try {
   Class.forName(dirverName);
   // 创建连接对象

  } catch (ClassNotFoundException e) {
   e.printStackTrace();
  }
 }

 /**
  * 获得连接对象
  *
  * @return
  */
 public static Connection getConnection() {
  try {
   connection = DriverManager.getConnection(url, user, password);
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return connection;
 }

 /**
  * 用来执行 添加、删除、修改的sql语句
  *
  * @param sql
  * @return 受影响的行数
  */
 public static int ExecuteNonQuery(String sql) {
  int num = 0;
  Connection conn = getConnection();
  Statement sta = null;
  try {
   sta = conn.createStatement();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  try {
   num = sta.executeUpdate(sql);
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   Close(null, sta, conn);
  }
  return num;
 }
 
 /**
  * 执行查询语句方法
  * @param sql  数据查询SQL脚本语言
  * @return  返回结果集
  */
 public static ResultSet ExecuteQuery(String sql){
  ResultSet rs=null;
  Connection con=getConnection();
  Statement sta=null;
  try {
   sta=con.createStatement();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  try {
   rs=sta.executeQuery(sql);
  } catch (SQLException e) {
   e.printStackTrace();
  }
  finally{
   //Close(rs, sta, con);
  }
  return rs;
 }

 /**
  * 关闭资源的方法
  *
  * @param rs
  *            结果集
  * @param sta
  *            执行对象
  * @param conn
  *            连接对象
  */
 private static void Close(ResultSet rs, Statement sta, Connection conn) {
  if (rs != null) {
   try {
    rs.close();
   } catch (SQLException e) {
    System.out.println("数据结果集关闭异常..!");
    e.printStackTrace();
   }
  }
  if (sta != null) {
   try {
    sta.close();
   } catch (SQLException e) {
    System.out.println("执行对象关闭异常、、!");
    e.printStackTrace();
   }
  }
  if (conn != null) {
   try {
    conn.close();
   } catch (SQLException e) {
    System.out.println("数据连接关闭异常、、!");
    e.printStackTrace();
   }
  }
  rs=null; sta=null; conn=null;
 }
 
 /**
  * 执行预编译sql语句的方法
  * @param sql
  * @param prgm
  * @return
  */
 public static int pstm(String sql,String prgm[]){
  int num=0;
  PreparedStatement pstm=null;
  try {
   pstm =getConnection().prepareStatement(sql);
   for (int i =1; i     pstm.setString(i, prgm[i-1]);
   }
   num=pstm.executeUpdate();
   pstm.close();
   connection.close();
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return num;
 }
 

}

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:InnoDB关键特性之insert bufferNächster Artikel:Mysql基础知识_MySQL