这里咱们使用的是mysql数据库因此咱们须要引入mysql驱动。右键项目点击properties》》》而后在下面这个界面点击Add External JARs...,把mysql-jdbc驱动链接进来。java
下面是我写的一个模板代码(供你们参考使用):mysql
package com.util.dbmethod; import java.sql.*; /** * @author yuanmuou * @功能:数据库函数集合 * @要求:须要引入mysql-jdbc驱动 */ public class Database { private static final String user = "root";// 数据库用户名 private static final String password = "123";// 数据库密码 private static String dbname = "shop";// 数据库名 static PreparedStatement prestate=null; private static final String driver = "com.mysql.jdbc.Driver"; private static Connection connect = null;// 数据库链接 private static final String url = "jdbc:mysql://localhost:3306/" + dbname + "?useUnicode=true&characterEncoding=UTF-8"; static { try { Class.forName(driver); } catch (Exception e) { e.printStackTrace(); System.out.println("错误:加载驱动失败,请检查驱动是否加载。错误信息:" + e.getMessage()); } } /** * @return boolean 检查是否设置了数据库 */ public static boolean isSetDbname() { if (dbname == null || dbname.equals("")) return false; else return true; } /** * @return Connection 数据库链接对象 */ public static Connection getConnection() { if (connect == null) { try { if (isSetDbname()) connect = DriverManager.getConnection(url, user, password); else { System.out.println("错误:未设置数据库名"); } } catch (SQLException e) { System.out.println("错误:数据库链接失败,请检查数据库名,密码,用户名是否正确"); e.printStackTrace(); } return connect; } return connect; } /** * @param string sql SQL语句 * @功能 执行SQL查询 * @返回 结果集 */ public static ResultSet doQuery(String sql){ if((connect=getConnection())==null) return null; else{ try { ResultSet resultset = prestate.executeQuery(sql); return resultset; } catch (SQLException e) { System.out.println("错误:sql语句执行出错"); e.printStackTrace(); } } return null; } /** * 下面是示例程序(能够删除) */ public static void main(String[] args) { try { Connection con = Database.getConnection(); if (con != null) { System.out.println("数据库链接正常"); } else { System.out.println("数据库链接失败"); } } catch (Exception e) { e.printStackTrace(); } } }
遍历结果集实例:sql
List<User> users = new ArrayList<>(); while (rs.next()) { User user = new User(); user.setAvatar(rs.getString("avatar")); user.setDescription(rs.getString("description")); user.setEmail(rs.getString("email")); user.setId(rs.getLong("id")); user.setPassword(rs.getString("password")); user.setTitle(rs.getString("title")); user.setUsername(rs.getString("username")); users.add(user); }
MySQL数据类型 | Java数据类型 | ResultSet方法 |
---|---|---|
CHAR | String | String getString() |
VARCHAR | String | String getString() |
LONGVARCHAR | String | InputStream getAsciiStream() |
NUMERIC | java.math.BigDecimal | java.math.BigDecimal getBigDecimal() |
DECIMAL | java.math.BigDecimal | java.math.BigDecimal getBigDecimal() |
BIT | Boolean | boolean getBoolean() |
TINYINT | Integer | byte getByte() |
SMALLINT | Integer | short getShort() |
INTEGER | Integer | int getInt() |
BIGINT | Long | long getLong() |
REAL | Float | float getFloat() |
FLOAT | Double | double getDouble() |
DOUBLE | Double | double getDouble() |
BINARY | byte[] | byte[] getBytes() |
VARBINARY | byte[] | byte[] getBytes() |
LONGVARBINARY | byte[] | getBinaryStream() |
DATE | java.sql.Date | java.sql.Date getDate() |
TIME | Java.sql.Time | java.sql.Time getTime() |
TIMESTAMP | Java.sql.Timestamp | java.sql.Timestamp getTimestamp() |