所需jar包:mysql-connector-java.jar

代码:

  1. import java.sql.*;
  2. import java.util.ArrayList;
  3. import java.util.HashMap;
  4. import java.util.List;
  5.  
  6. import com.mysql.jdbc.Connection;
  7. import com.mysql.jdbc.Statement;
  8.  
  9. public class ConnectMySQL {
  10.  
  11. public static String driver = "com.mysql.jdbc.Driver";
  12.  
  13. private static String host;
  14.  
  15. private static String user;
  16.  
  17. private static String pwd;
  18.  
  19. private static Connection conn = null;
  20.  
  21. private static Statement stmt = null;
  22.  
  23. public static void connect(String host, String user, String pwd) {
  24. ConnectMySQL.close();
  25. ConnectMySQL.host = host;
  26. ConnectMySQL.user = user;
  27. ConnectMySQL.pwd = pwd;
  28. }
  29.  
  30. public static synchronized List<HashMap<String, String>> query(String sql) {
  31. return ConnectMySQL.result(sql);
  32. }
  33.  
  34. public static synchronized void close() {
  35. try {
  36. if (stmt != null) {
  37. stmt.close();
  38. stmt = null;
  39. }
  40. if (conn != null) {
  41. conn.close();
  42. conn = null;
  43. }
  44. } catch (SQLException e) {
  45. e.printStackTrace();
  46. }
  47. }
  48.  
  49. private static void connectMySQL() {
  50. try {
  51. Class.forName(driver).newInstance();
  52. conn = (Connection) DriverManager.getConnection("jdbc:mysql://"
  53. + host + "?useUnicode=true&characterEncoding=UTF8", user,
  54. pwd);
  55. } catch (InstantiationException e) {
  56. e.printStackTrace();
  57. } catch (IllegalAccessException e) {
  58. e.printStackTrace();
  59. } catch (ClassNotFoundException e) {
  60. e.printStackTrace();
  61. } catch (SQLException e) {
  62. e.printStackTrace();
  63. }
  64.  
  65. }
  66.  
  67. private static void statement() {
  68. if (conn == null) {
  69. ConnectMySQL.connectMySQL();
  70. }
  71. try {
  72. stmt = (Statement) conn.createStatement();
  73. } catch (SQLException e) {
  74. e.printStackTrace();
  75. }
  76. }
  77.  
  78. private static ResultSet resultSet(String sql) {
  79. ResultSet rs = null;
  80. if (stmt == null) {
  81. ConnectMySQL.statement();
  82. }
  83. try {
  84. rs = stmt.executeQuery(sql);
  85. } catch (SQLException e) {
  86. e.printStackTrace();
  87. }
  88. return rs;
  89. }
  90.  
  91. private static List<HashMap<String, String>> result(String sql) {
  92. ResultSet rs = ConnectMySQL.resultSet(sql);
  93. List<HashMap<String, String>> result = new ArrayList<HashMap<String, String>>();
  94. try {
  95. ResultSetMetaData md = rs.getMetaData();
  96. int cc = md.getColumnCount();
  97. while (rs.next()) {
  98. HashMap<String, String> columnMap = new HashMap<String, String>();
  99. for (int i = 1; i <= cc; i++) {
  100. columnMap.put(md.getColumnName(i), rs.getString(i));
  101. }
  102. result.add(columnMap);
  103. }
  104. } catch (SQLException e) {
  105. e.printStackTrace();
  106. }
  107. return result;
  108. }
  109.  
  110. public static void main(String[] args) throws SQLException {
  111. ConnectMySQL
  112. .connect("192.168.1.1/test", "test", "test");
  113. List<HashMap<String, String>> rs = ConnectMySQL
  114. .query("SELECT * from test");
  115. System.out.println(rs.get(0).get("test"));
  116. ConnectMySQL.close();
  117. }
  118. }

JAVA操作mysql的更多相关文章

  1. 总结java操作MySQL 即JDBC的使用

    java.sql包中存在DriverManager类,Connection接口,Statement接口和ResultSet接口.类和接口作用如下: DriverManager:主要用于管理驱动程序和连 ...

  2. java操作MySQL数据库(插入、删除、修改、查询、获取所有行数)

    插播一段广告哈:我之前共享了两个自己写的小应用,见这篇博客百度地图开发的两个应用源码共享(Android版),没 想到有人找我来做毕设了,年前交付,时间不是很紧,大概了解了下就接下了,主要用到的就是和 ...

  3. Java 操作MySql数据库

    Java 项目开发中数据库操作是很重要的一个方面,对于初学者来说,MySql是比较容易熟悉的一种常见数据库,这篇文章记录了如何用Java来操作MySql数据库. 第一章 JDBC的概念 JDBC(Ja ...

  4. JAVA操作mysql(如何更加面向对象的操作数据库)

    既然谈到面向对象,所以,先把连接信息给搞个对象出来: public class DBInfo { private String driver; private String host; private ...

  5. eclipse环境下,java操作MySQL的简单演示

    首先先通过power shell 进入MySQL 查看现在数据库的状态(博主是win10系统) 右键开始,选择Windows powershell ,输入MySQL -u用户名 -p密码 选择数据库( ...

  6. Java操作Mysql笔记

    第一步,需要下载JDBC驱动, 点我.然后选择合适的版本即可. 下载完成之后解压,然后将mysql-connector-java-5.1.6-bin.jar文件放到java的安装目录下面. 这里每个人 ...

  7. JAVA操作Mysql数据库

    String driver = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://127.0.0.1:3306/ph ...

  8. java操作MySQL数据事务的简单学习

    在执行数据更改操作前使用数据库连接对象调用setAutoCommit方法(conn.setAutoCommit(false)),其参数true或false区别: true:sql命令的提交(commi ...

  9. java操作mysql的增删改查

    prepareStatement(sql)是statement的子类,比statement好用. 如果数据库中定义的是int值,那么sql语句中要把int单独提出来.如".....value ...

随机推荐

  1. Android -- Serializable和Parcelable需要注意的

    Serializable 静态变量序列化不会被保存 public class Test implements Serializable { private static final long seri ...

  2. 【Spark】SparkStreaming-Checkpoint-容错

    SparkStreaming-Checkpoint-容错 Spark Streaming如何使用checkpoint容错 - CSDN博客 spark/JavaRecoverableNetworkWo ...

  3. Docker创建MySQL容器环境两部曲

    1:下载MySQL镜像 需要执行以下命令,确保主机或者VM联网,从官网下载mysql的最新镜像(镜像版本以官网为主) docker  pull  mysql 下载成功后执行 docker image ...

  4. Dubbo框架应用之(三)--Zookeeper注冊中心、管理控制台的安装及解说

    我是在linux下使用dubbo-2.3.3以上版本号的zookeeper注冊中心客户端. Zookeeper是Apache Hadoop的子项目,强度相对较好,建议生产环境使用该注冊中心. Dubb ...

  5. [Javascript] Avoiding Mutations in JavaScript with Immutable Data Structures

    To demonstrate the difference between mutability and immutability, imagine taking a drink from a gla ...

  6. 【Nodejs】外研社一年级起各年级英语音频下载(缺456年级上)

    在 https://news.21cnjy.com/A/130/235/V729768.shtml 有各年级英语音频下载,用爬虫把能下的都下了,除了四五六年级上册的. 爬虫 http://www.cn ...

  7. python数据结构与算法 29-1 哈希查找

    ).称为哈希查找. 要做到这种性能,我们要知道元素的可能位置.假设每一个元素就在他应该在的位置上,那么要查找的时候仅仅须要一次比較得到有没有的答案,但以下将会看到.不是这么回事. 到10. water ...

  8. windows下根据进程ID强制杀死进程

    [windows 进程ID PID]NTSD命令详解 1. ntsd -c q -p PID 2. ntsd -c q -pn ImageName 比如:ntsd -c q -pn qq.exe -c ...

  9. maven 上传包

    本地 mvn deploy 第三方jar包 mvn deploy:deploy-file -DgroupId=com.zendaimoney.uc -DartifactId=uc-client -Dv ...

  10. 使用Spring框架入门一:基于XML配置的IOC/DI的使用

    一.Spring框架 1.方法一:逐项导入基础依赖包: spring-core.spring-beans.spring-context.spring-expression 2.方法二:最简洁的导入,直 ...