java链接mysql数据库

这里咱们使用的是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()
相关文章
相关标签/搜索