數(shù)據(jù)操作前對數(shù)據(jù)進(jìn)行初始化工作略就,主要是建立數(shù)據(jù)庫表牢,新建表等工作贝次。
create database test;
create table user(id int, username varchar(30), passwd varchar(30));
desc user; //查看表結(jié)構(gòu)信息
對數(shù)據(jù)表插入測試數(shù)據(jù)
insert into user value(1,"zhang","1111111");
insert into user value(2,"wang","222222");
insert into user value(3,"li","3333333");
插入內(nèi)容如下:
通過JAVA程序連接數(shù)據(jù)庫,讀取數(shù)據(jù)表時使用Statement接口敲茄,通過該接口獲取一個結(jié)果集ResultSet類型數(shù)據(jù)獲取方式如下:
Statement stat = (Statement) con.createStatement(); //通過con.createStatement創(chuàng)建Statement對象堰燎。
ResultSet ret =stat.executeQuery(SQL);
ret獲取數(shù)據(jù)庫查詢內(nèi)容,可以通過循環(huán)語句輸出數(shù)據(jù)庫內(nèi)容秆剪。
詳細(xì)測試代碼如下:
···
package souData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.stream.Stream;
import org.junit.Test;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
public class rundata {
@Test
public void rundata() throws ClassNotFoundException, SQLException{
DButil dbutil = new DButil(); //實(shí)例化數(shù)據(jù)庫連接類
Connection connDB = dbutil.getConnection(); //獲取數(shù)據(jù)庫連接對象
System.out.println(connDB);
System.out.println("==========================================");
String SQL = "select id, username, passwd from users";
try{
Statement sat = (Statement) connDB.createStatement();
ResultSet data = sat.executeQuery(SQL) ;
while(data.next()){
int id = data.getInt(1);
String username = data.getNString(2);
String passwd = data.getNString(3);
System.out.println("data:"+id+":"+username+":"+"passwd");
}
}catch(SQLException e){
e.printStackTrace();
}
}
}
···
即可正確輸出查詢內(nèi)容
通過參數(shù)傳遞還可以將類仅讽、url、user饱岸、passwd方式傳入連接建立參數(shù)徽千。