中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用JDBC訪問MySql公共方法

發布時間:2020-11-02 15:28:30 來源:億速云 閱讀:185 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關使用JDBC訪問MySql公共方法,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

package com;
import java.sql.*;
import java.util.*;
import org.apache.commons.dbcp.BasicDataSource;
/**
 * @說明 數據庫連接管理
 * @author cuisuqiang
 */
public class ConnectionManager {
	/**
	 * @說明 執行一條SQL
	 */
	@SuppressWarnings("unchecked")
	public static List<Object[]> excuteQuery(String sql) {
		Connection conn = null;
		PreparedStatement psta = null;
		ResultSet resultSet = null;
		List<Object[]> relist = new ArrayList<Object[]>(); // 總數據
		Object[] objects = null; // 每行數據
		try {
			conn = ConnectionManager.getConn(); // 得到鏈接
			if(null != conn){
				psta = conn.prepareStatement(sql);
				resultSet = psta.executeQuery(); // 執行查詢,返回結果接集合
				int count = resultSet.getMetaData().getColumnCount(); // 一共有多少列數據
				// 循環行
				while (resultSet.next()) {
					objects = new Object[count];
					// 數據集索引從 1 開始,而數組存放時是從 0 開始
					for (int i = 1; i <= count; i++) {
						objects[i - 1] = resultSet.getObject(i);
					}
					relist.add(objects);
				}
			}
		} catch (Exception e) {
			e.printStackTrace();
			relist = null;
		} finally {
			try {
				if(null != resultSet)
					resultSet.close();
				if(null != psta)
					psta.close();
				if(null != conn)
					conn.close();
			} catch (Exception e2) {
				
			}
		}
		return relist;
	}
	private static org.apache.commons.dbcp.BasicDataSource ds = null;
	static {
		ds = new BasicDataSource(); // 組建數據源對象
		int initialSize = 1; // 連接池啟動時的初始值
		int maxActive = 10; // 連接池的最大值
		int maxIdle = 1;   // 最大空閑值
		int minIdle = 1;   // 最小空閑值
		ds.setDriverClassName("com.mysql.jdbc.Driver");
		ds.setUrl("jdbc:mysql://192.168.154.128:3306/t2&#63;useUnicode=true&characterEncoding=gbk");
		ds.setUsername("root");
		ds.setPassword("123456");
		ds.setInitialSize(initialSize);
		ds.setMaxActive(maxActive);
		ds.setMaxIdle(maxIdle);
		ds.setMinIdle(minIdle);
	}
	/**
	 * 從數據源中取得數據庫連接
	 */
	public static Connection getConn() {
		try {
			return ds.getConnection();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return null;
	}
}

我使用的是BasicDataSource,你可能需要兩個Jar包,commons-pool.jar,commons-dbcp.jar,連接mysql的話需要mysql-connector-java-3.1.13-bin.jar。

寫一個mian方法直接測試:

package com; 
import java.util.List; 
public class T { 
  @SuppressWarnings("unchecked") 
  public static void main(String[] args) { 
    try { 
      List<Object[]> list = ConnectionManager.excuteQuery("select * from t"); 
      for (int i = 0; i < list.size(); i++) { 
        Object[] os = list.get(i); 
        for(Object o : os){ 
          if (o instanceof String) { 
            String s = (String) o; 
            String newStr = new String(s.getBytes("ISO-8859-1"),"GBK"); 
            System.out.print("字符串:" + newStr + "\t\t"); 
          }else if(o instanceof Long){ 
            Long s = (Long) o; 
            System.out.print("浮點值:" + s + "\t\t"); 
          }else if(o instanceof Integer){ 
            Integer s = (Integer) o; 
            System.out.print("整形值:" + s + "\t\t"); 
          }else{ 
            System.out.print("未知型:" + o + "\t\t"); 
          } 
        } 
        System.out.println(); 
      } 
    } catch (Exception e) { 
      e.printStackTrace(); 
    }     
  } 
}

我返回的是一個List集合,里面包含了一個Object數組。調用者在收到這個返回集合后可以根據實際情況進行解析,公共方法只是執行SQL,然后得到數據連接進行數據訪問。

上述就是小編為大家分享的使用JDBC訪問MySql公共方法了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鲁甸县| 浮山县| 若羌县| 岱山县| 承德市| 东乡县| 怀安县| 石首市| 木兰县| 中方县| 教育| 呼和浩特市| 满城县| 和平县| 中卫市| 嘉禾县| 盐池县| 和林格尔县| 林州市| 九龙坡区| 怀仁县| 余干县| 平度市| 七台河市| 怀宁县| 嘉善县| 伊春市| 盐山县| 大足县| 汤原县| 土默特右旗| 黎城县| 武冈市| 永春县| 双桥区| 澳门| 巴东县| 筠连县| 额济纳旗| 济宁市| 开江县|