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()
相關文章
相關標籤/搜索