
數(shù)據(jù)庫(kù)中的表

目錄結(jié)構(gòu)

目錄結(jié)構(gòu)2

目錄結(jié)構(gòu)3
用戶的實(shí)體類(lèi)、跟數(shù)據(jù)庫(kù)表對(duì)應(yīng)起來(lái)。
package com.haila.domain;/*
* @program: maven_javaweb
*
* @Date: 2020/3/17 0017 16:34
*
* @Author : haira
*
* @Description:MavenUser的實(shí)體類(lèi)
*/
public class MavenUser {
private String name;
private int age;
private String gender;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@Override
public String toString() {
return "maven_user{" +
"name='" + name + '\'' +
", age=" + age +
", gender='" + gender + '\'' +
'}';
}
}
要實(shí)現(xiàn)的接口(查詢?nèi)浚?/p>
package com.haila.dao;/*
* @program: maven_javaweb
*
* @Date: 2020/3/17 0017 16:40
*
* @Author : haira
*
* @Description:
*/
import com.haila.domain.MavenUser;
import java.util.List;
public interface MavenUserDao {
public List<MavenUser> findAll();
}
接口實(shí)現(xiàn)類(lèi)、跟數(shù)據(jù)庫(kù)交互把想要的數(shù)據(jù)取回來(lái)
package com.haila.dao.impl;/*
* @program: maven_javaweb
*
* @Date: 2020/3/17 0017 16:41
*
* @Author : haira
*
* @Description:
*/
import com.haila.dao.MavenUserDao;
import com.haila.domain.MavenUser;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class MavenDaoImpl implements MavenUserDao {
@Override
public List<MavenUser> findAll() {
List<MavenUser> list = new ArrayList<MavenUser>();
//先獲取contection對(duì)象
Connection connection = null;
//獲取真正操作數(shù)據(jù)的對(duì)象
PreparedStatement pst = null;
//執(zhí)行數(shù)據(jù)庫(kù)查詢操作
ResultSet rs = null;
try {
//加載驅(qū)動(dòng)類(lèi)
Class.forName("com.mysql.cj.jdbc.Driver");
//先獲取contection對(duì)象
connection = DriverManager.getConnection("jdbc:mysql:///haila?useSSL=false&serverTimezone=UTC","root", "7281412");
//獲取真正操作數(shù)據(jù)的對(duì)象
pst = connection.prepareCall("select * from maven_user");
//執(zhí)行數(shù)據(jù)庫(kù)查詢操作
rs = pst.executeQuery();
//把數(shù)據(jù)庫(kù)結(jié)果集轉(zhuǎn)成java的List集合
while (rs.next()){
MavenUser items = new MavenUser();
items.setName(rs.getNString("name"));
items.setAge(rs.getInt("age"));
items.setGender(rs.getNString("gender"));
list.add(items);
}
}catch (Exception e){
e.printStackTrace();
}finally {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
}
測(cè)試方法,實(shí)現(xiàn)控制臺(tái)輸出
package com.haila.test;/*
* @program: maven_javaweb
*
* @Date: 2020/3/17 0017 17:09
*
* @Author : haira
*
* @Description:
*/
import com.haila.dao.MavenUserDao;
import com.haila.dao.impl.MavenDaoImpl;
import com.haila.domain.MavenUser;
import org.junit.Test;
import java.util.List;
public class MavenUserTest {
@Test
public void findAll(){
MavenUserDao mavenUserDao=new MavenDaoImpl();
List<MavenUser> list=mavenUserDao.findAll();
for (MavenUser mavenUser:list) {
System.out.println(mavenUser);
}
}
}
運(yùn)行結(jié)果:

yunxingjieguo
總結(jié):
1.數(shù)據(jù)庫(kù)連接有兩個(gè)地方要注意一下會(huì)涉及到版本問(wèn)題。
2.數(shù)據(jù)庫(kù)四個(gè)屬性:數(shù)據(jù)庫(kù)驅(qū)動(dòng)、數(shù)據(jù)庫(kù)地址、數(shù)據(jù)庫(kù)用戶名、密碼。

數(shù)據(jù)庫(kù)連接