使用jdbc操作mysql数据库
来源:互联网 发布:剑灵天族身材数据 编辑:程序博客网 时间:2024/05/22 10:39
下面是本人在工作写的一个使用jdck操作mysql数据库的工具类,希望对大家有所帮助,如有错误或不妥之处,欢迎大家留言指正!
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.sql.Statement;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;public class MysqlDBHelper {private static Connection conn = null;// 获得连接对象public static Connection getConn() {String sDriverName = "com.mysql.jdbc.Driver";String sDBUrl = "jdbc:mysql://127.0.0.1/phonebook";String userName = "root"; // 默认用户名String userPwd = "test"; // 密码try {Class.forName(sDriverName);conn = DriverManager.getConnection(sDBUrl, userName, userPwd);} catch (ClassNotFoundException e) {throw new RuntimeException(e);} catch (SQLException e) {throw new RuntimeException(e);}return conn;}// 关闭连接public static void closeConn(Statement statement) {try {statement.close();statement = null;conn.close();conn = null;} catch (Exception e) {e.printStackTrace();conn = null;}}// 获得查询结果集public static List<Map<String, Object>> queryList(String sql, Object[] params) {getConn();PreparedStatement ps = null;List<Map<String, Object>> resultList = null;try {ps = conn.prepareStatement(sql);if (params != null) {for (int i = 0; i < params.length; i++) {ps.setObject(i + 1, params[i]);}}resultList = resultSetConvertList(ps.executeQuery());} catch (SQLException e) {throw new RuntimeException(e);}closeConn(ps);return resultList;}// 用于对表的增删改操作public static int update(String sql, Object[] params) {getConn();PreparedStatement ps = null;int updateResult = 0;try {ps = conn.prepareStatement(sql);if (params != null) {for (int i = 0; i < params.length; i++) {ps.setObject(i + 1, params[i]);}}updateResult = ps.executeUpdate();} catch (SQLException e) {throw new RuntimeException(e);}closeConn(ps);return updateResult;}// ResultSet转换成List<Map<String, Object>>private static List<Map<String, Object>> resultSetConvertList(ResultSet resultSet) throws SQLException {List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();ResultSetMetaData rmd = resultSet.getMetaData();int columnCount = rmd.getColumnCount();while (resultSet.next()) {Map<String, Object> rowData = new HashMap<String, Object>();for (int i = 1; i <= columnCount; i++) {rowData.put(rmd.getColumnName(i), resultSet.getObject(i));}list.add(rowData);}return list;}}特别提醒大家,使用jdbc操作mysql数据还需要依赖mysql驱动包(mysql-connector-java-5.1.29.jar)。
0 0
- 使用JDBC操作数据库(mysql):
- 使用jdbc操作mysql数据库
- 使用JDBC操作Mysql数据库
- Java中使用JDBC操作MySQL数据库
- java使用JDBC操作MYSQL数据库
- jdbc操作mysql数据库
- jdbc 操作mysql数据库
- jdbc操作mysql数据库
- jdbc操作mysql数据库
- jdbc操作mysql数据库
- JDBC操作Mysql数据库
- 使用JDBC操作数据库
- 使用JDBC操作数据库
- 使用JDBC操作MySql
- JDBC操作Mysql数据库源代码
- Java -- JDBC 操作Mysql数据库
- Java -- JDBC 操作mysql数据库
- [Java]JDBC操作MySQL数据库
- 常见的数字证书格式与格式转换
- 宗教不自由与宗教发展——以北京基督教守望教会为例
- 挂载fedora安装光盘小系统squashfs.img命令
- 简陋的冰桶挑战小游戏
- Android apk动态加载机制的研究
- 使用jdbc操作mysql数据库
- JobScheduler的使用
- 【网络】HTTP2.0新特性
- git fetch与git pull的区别--多用git fetch
- HDU 4862 Jump (最大费用流 | 经典建图)
- 一台电脑同时安装不同的python、django版本
- Preferences.sublime-settings
- js框架jquery瀑布流图片墙效果代码下载,点击相册图片展示大图
- Android apk动态加载机制的研究(二):资源加载和activity生命周期管理