第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

jdbcutil.java能分享嗎?

視頻里的jdbcutil有下載地址么?網(wǎng)上看到的都不一樣啊。

正在回答

3 回答

package?com.imooc.page.util;

import?java.io.InputStream;
import?java.sql.Connection;
import?java.sql.DriverManager;
import?java.sql.PreparedStatement;
import?java.sql.ResultSet;
import?java.sql.ResultSetMetaData;
import?java.sql.SQLException;
import?java.util.ArrayList;
import?java.util.HashMap;
import?java.util.List;
import?java.util.Map;
import?java.util.Properties;


public?class?JdbcUtil?{

	//?表示定義數(shù)據(jù)庫(kù)的用戶名
	private?static?String?USERNAME?;

	//?定義數(shù)據(jù)庫(kù)的密碼
	private?static?String?PASSWORD;

	//?定義數(shù)據(jù)庫(kù)的驅(qū)動(dòng)信息
	private?static?String?DRIVER;

	//?定義訪問(wèn)數(shù)據(jù)庫(kù)的地址
	private?static?String?URL;

	//?定義數(shù)據(jù)庫(kù)的鏈接
	private?Connection?connection;

	//?定義sql語(yǔ)句的執(zhí)行對(duì)象
	private?PreparedStatement?pstmt;

	//?定義查詢返回的結(jié)果集合
	private?ResultSet?resultSet;
	
	static{
		//加載數(shù)據(jù)庫(kù)配置信息,并給相關(guān)的屬性賦值
		loadConfig();
	}

	/**
	?*?加載數(shù)據(jù)庫(kù)配置信息,并給相關(guān)的屬性賦值
	?*/
	public?static?void?loadConfig()?{
		try?{
			InputStream?inStream?=?JdbcUtil.class
					.getResourceAsStream("/jdbc.properties");
			Properties?prop?=?new?Properties();
			prop.load(inStream);
			USERNAME?=?prop.getProperty("jdbc.username");
			PASSWORD?=?prop.getProperty("jdbc.password");
			DRIVER=?prop.getProperty("jdbc.driver");
			URL?=?prop.getProperty("jdbc.url");
		}?catch?(Exception?e)?{
			throw?new?RuntimeException("讀取數(shù)據(jù)庫(kù)配置文件異常!",?e);
		}
	}

	public?JdbcUtil()?{

	}

	/**
	?*?獲取數(shù)據(jù)庫(kù)連接
	?*?
	?*?@return?數(shù)據(jù)庫(kù)連接
	?*/
	public?Connection?getConnection()?{
		try?{
			Class.forName(DRIVER);?//?注冊(cè)驅(qū)動(dòng)
			connection?=?DriverManager.getConnection(URL,?USERNAME,?PASSWORD);?//?獲取連接
		}?catch?(Exception?e)?{
			throw?new?RuntimeException("get?connection?error!",?e);
		}
		return?connection;
	}
	/**
	?*?執(zhí)行更新操作
	?*?
	?*?@param?sql
	?*????????????sql語(yǔ)句
	?*?@param?params
	?*????????????執(zhí)行參數(shù)
	?*?@return?執(zhí)行結(jié)果
	?*?@throws?SQLException
	?*/
	public?boolean?updateByPreparedStatement(String?sql,?List<?>?params)
			throws?SQLException?{
		boolean?flag?=?false;
		int?result?=?-1;//?表示當(dāng)用戶執(zhí)行添加刪除和修改的時(shí)候所影響數(shù)據(jù)庫(kù)的行數(shù)
		pstmt?=?connection.prepareStatement(sql);
		int?index?=?1;
		//?填充sql語(yǔ)句中的占位符
		if?(params?!=?null?&&?!params.isEmpty())?{
			for?(int?i?=?0;?i?<?params.size();?i++)?{
				pstmt.setObject(index++,?params.get(i));
			}
		}
		result?=?pstmt.executeUpdate();
		flag?=?result?>?0???true?:?false;
		return?flag;
	}

	/**
	?*?執(zhí)行查詢操作
	?*?
	?*?@param?sql
	?*????????????sql語(yǔ)句
	?*?@param?params
	?*????????????執(zhí)行參數(shù)
	?*?@return
	?*?@throws?SQLException
	?*/
	public?List<Map<String,?Object>>?findResult(String?sql,?List<?>?params)
			throws?SQLException?{
		List<Map<String,?Object>>?list?=?new?ArrayList<Map<String,?Object>>();
		int?index?=?1;
		pstmt?=?connection.prepareStatement(sql);
		if?(params?!=?null?&&?!params.isEmpty())?{
			for?(int?i?=?0;?i?<?params.size();?i++)?{
				pstmt.setObject(index++,?params.get(i));
			}
		}
		resultSet?=?pstmt.executeQuery();
		//getMetaData()獲取結(jié)果集的所有字段的描述
		ResultSetMetaData?metaData?=?resultSet.getMetaData();
		//得到數(shù)據(jù)集的列數(shù)
		int?cols_len?=?metaData.getColumnCount();
		while?(resultSet.next())?{
			Map<String,?Object>?map?=?new?HashMap<String,?Object>();
			for?(int?i?=?0;?i?<?cols_len;?i++)?{
				String?cols_name?=?metaData.getColumnName(i?+?1);
				Object?cols_value?=?resultSet.getObject(cols_name);
				if?(cols_value?==?null)?{
					cols_value?=?"";
				}
				map.put(cols_name,?cols_value);
			}
			list.add(map);
		}
		return?list;
	}

	/**
	?*?釋放資源
	?*/
	public?void?releaseConn()?{
		if?(resultSet?!=?null)?{
			try?{
				resultSet.close();
			}?catch?(SQLException?e)?{
				e.printStackTrace();
			}
		}
		if?(pstmt?!=?null)?{
			try?{
				pstmt.close();
			}?catch?(SQLException?e)?{
				e.printStackTrace();
			}
		}
		if?(connection?!=?null)?{
			try?{
				connection.close();
			}?catch?(SQLException?e)?{
				e.printStackTrace();
			}
		}
	}

	public?static?void?main(String[]?args)?{
		JdbcUtil?jdbcUtil?=?new?JdbcUtil();
		jdbcUtil.getConnection();
		try?{
			List<Map<String,?Object>>?result?=?jdbcUtil.findResult(
					"select?*?from?t_student",?null);
			for?(Map<String,?Object>?m?:?result)?{
				System.out.println(m);
			}
		}?catch?(SQLException?e)?{
			e.printStackTrace();
		}?finally?{
			jdbcUtil.releaseConn();
		}
	}
}


0 回復(fù) 有任何疑惑可以回復(fù)我~

同樓上

0 回復(fù) 有任何疑惑可以回復(fù)我~

自己寫一個(gè)多好,又鍛煉了自己,還加深了印像,用起來(lái)還方便。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

jdbcutil.java能分享嗎?

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)