很長時間沒有系統的使用java做項目了。現在需要使用java完成一個實驗,其中涉及到java連接數據庫。讓自己來寫,記憶中已無從搜索。特將之前使用的方法做一簡單的總結。也能夠在底層理解一下連接數據庫的具體步驟。
首先需要導入相關的jar包,我使用的為:mysql-connector-java-5.1.7-bin.jar。
下面來看一下我所使用的數據庫連接方法類:
package cn.edu.ujn.util; import java.lang.reflect.Field; 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.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import cn.edu.ujn.base.Const; import cn.edu.ujn.dao.UserDao; import cn.edu.ujn.model.User; public class MysqlUtil { // 定義數據庫的用戶名 private final static String USERNAME = Const.USERNAME; // 定義數據庫的密碼 private final static String PASSWORD = Const.PASSWORD; // 定義數據庫的驅動信息 private final String DRIVER = Const.DRIVER; // 定義訪問數據庫的地址 private final static String URL = Const.URL; // 定義數據庫的鏈接 private static Connection connection; // 定義sql語句的執行對象 private static PreparedStatement pstmt;// 只有在獲得了Statement之後才可執行SQL語句 // 定義查詢返回的結果集合 private static ResultSet resultset; public MysqlUtil() { try { Class.forName(DRIVER);// 顯式地加載 JDBC 驅動程序 System.out.println("注冊驅動成功!"); } catch (Exception e) { System.out.println("注冊驅動失敗!"); } } /** * 定義獲得數據庫的鏈接,試圖建立到給定數據庫 URL 的連接 * * @return connection */ public static Connection GetConnection() { try { connection = DriverManager.getConnection(URL, USERNAME, PASSWORD); System.out.println("數據庫連接成功!"); } catch (Exception e) { System.out.println("數據庫連接失敗!"); } return connection; } /** * 完成對數據庫表的增加、刪除、更新操作 * * @param sql * @param params * @return flag * @throws SQLException */ public static boolean updateByPreparedStatement(String sql, List
以上介紹了數據庫的連接方法及常用的查詢操作。
其中的常量如下定義:
package cn.edu.ujn.base; public class Const { // 定義數據庫的IP public final static String IP = "localhost"; // 定義數據庫的端口 public final static String DBPORT = "3308"; // 定義數據庫的名稱 public final static String DBNAME = "lab"; // 定義數據庫的用戶名 public final static String USERNAME = "lmapp"; // 定義數據庫的密碼 public final static String PASSWORD = "lmapp"; // 定義數據庫的驅動信息 public final static String DRIVER = "com.mysql.jdbc.Driver"; // 定義訪問數據庫的地址 public final static String URL = "jdbc:mysql://" + IP + ":" + DBPORT + "/" + DBNAME; }
以上只是實現了java連接到數據庫,要實現數據的插入等操作,還需要以下方法:
package cn.edu.ujn.dao; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import cn.edu.ujn.model.User; import cn.edu.ujn.util.MysqlUtil; public class UserDao { MysqlUtil mysqlUtil = new MysqlUtil(); /** * 添加用戶信息 * * @param user * @return */ public int add(User user) { try { String sql = "insert into lab_static_attribute(uid,login_time,out_time,last_time) values(?,?,?,?)"; List
這裡只是介紹了數據的增加方法,數據庫的CRUD其它三種操作方法,請讀者自行練習。
相比於框架實現數據庫的操作,這裡介紹的方法確實需要完成更多的代碼。但是對於初學者來說,還是建議通過這種方法來完成數據庫的操作。這樣可以更多的了解數據庫操作的底層操作行為。學知識講究“知其然,更要知其所以然”。