Bản quyền thuộc về TITV.vn,
vui lòng không đăng tải lại nội dung từ trang này.
Video giải thích chi tiết
Nội dung chi tiết
package database;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
import com.mysql.cj.jdbc.Driver;
public class JDBCUtil {
public static Connection getConnection() {
Connection c = null;
try {
// Đăng ký MySQL Driver với DriverManager
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
// Các thông số
String url = "jdbc:mySQL://localhost:3306/nhasach";
String username = "root";
String password = "";
// Tạo kết nối
c = DriverManager.getConnection(url, username, password);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return c;
}
public static void closeConnection(Connection c) {
try {
if(c!=null) {
c.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void printInfo(Connection c) {
try {
if(c!=null) {
DatabaseMetaData mtdt = c.getMetaData();
System.out.println(mtdt.getDatabaseProductName());
System.out.println(mtdt.getDatabaseProductVersion());
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
package model;
public class Sach {
private String id;
private String tenSach;
private float giaBan;
private int namXuatBan;
public Sach() {
super();
}
public Sach(String id, String tenSach, float giaBan, int namXuatBan) {
super();
this.id = id;
this.tenSach = tenSach;
this.giaBan = giaBan;
this.namXuatBan = namXuatBan;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getTenSach() {
return tenSach;
}
public void setTenSach(String tenSach) {
this.tenSach = tenSach;
}
public float getGiaBan() {
return giaBan;
}
public void setGiaBan(float giaBan) {
this.giaBan = giaBan;
}
public int getNamXuatBan() {
return namXuatBan;
}
public void setNamXuatBan(int namXuatBan) {
this.namXuatBan = namXuatBan;
}
}
package model;
import java.sql.Date;
public class KhachHang {
private int id;
private String hoVaTen;
private Date ngaySinh;
private String diaChi;
public KhachHang() {
super();
}
public KhachHang(int id, String hoVaTen, Date ngaySinh, String diaChi) {
super();
this.id = id;
this.hoVaTen = hoVaTen;
this.ngaySinh = ngaySinh;
this.diaChi = diaChi;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getHoVaTen() {
return hoVaTen;
}
public void setHoVaTen(String hoVaTen) {
this.hoVaTen = hoVaTen;
}
public Date getNgaySinh() {
return ngaySinh;
}
public void setNgaySinh(Date ngaySinh) {
this.ngaySinh = ngaySinh;
}
public String getDiaChi() {
return diaChi;
}
public void setDiaChi(String diaChi) {
this.diaChi = diaChi;
}
}
package dao;
import java.util.ArrayList;
public interface DAOInterface<T> {
public int insert(T t);
public int update(T t);
public int delete(T t);
public ArrayList<T> selectAll();
public T selectById(T t);
public ArrayList<T> selectByCondition(String condition);
}
package dao;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import database.JDBCUtil;
import model.Sach;
public class SachDAO implements DAOInterface<Sach>{
public static SachDAO getInstance() {
return new SachDAO();
}
@Override
public int insert(Sach t) {
int ketQua = 0;
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "INSERT INTO sach (id, tenSach, giaBan, namXuatBan) "+
" VALUES ('"+t.getId()+"' , '"+t.getTenSach()+"' , "+ t.getGiaBan()+" , '"+t.getNamXuatBan()+"')";
ketQua = st.executeUpdate(sql);
// Bước 4:
System.out.println("Bạn đã thực thi: "+ sql);
System.out.println("Có "+ ketQua+" dòng bị thay đổi!");
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public int update(Sach t) {
int ketQua = 0;
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "UPDATE sach "+
" SET " +
" tenSach='"+ t.getTenSach()+"'"+
", giaBan="+ t.getGiaBan()+
", namXuatBan="+ t.getNamXuatBan()+
" WHERE id='"+t.getId()+"\'";
System.out.println(sql);
ketQua = st.executeUpdate(sql);
// Bước 4:
System.out.println("Bạn đã thực thi: "+ sql);
System.out.println("Có "+ ketQua+" dòng bị thay đổi!");
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public int delete(Sach t) {
int ketQua = 0;
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "DELETE from sach "+
" WHERE id='"+t.getId()+"'";
System.out.println(sql);
ketQua = st.executeUpdate(sql);
// Bước 4:
System.out.println("Bạn đã thực thi: "+ sql);
System.out.println("Có "+ ketQua+" dòng bị thay đổi!");
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public ArrayList<Sach> selectAll() {
ArrayList<Sach> ketQua = new ArrayList<Sach>();
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "SELECT * FROM sach";
System.out.println(sql);
ResultSet rs = st.executeQuery(sql);
// Bước 4:
while(rs.next()) {
String id = rs.getString("id");
String tenSach = rs.getString("tenSach");
float giaBan = rs.getFloat("giaBan");
int namXuatBan = rs.getInt("namXuatBan");
Sach sach = new Sach(id, tenSach, giaBan, namXuatBan);
ketQua.add(sach);
}
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public Sach selectById(Sach t) {
Sach ketQua = null;
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "SELECT * FROM sach where id='"+t.getId()+"'";
System.out.println(sql);
ResultSet rs = st.executeQuery(sql);
// Bước 4:
while(rs.next()) {
String id = rs.getString("id");
String tenSach = rs.getString("tenSach");
float giaBan = rs.getFloat("giaBan");
int namXuatBan = rs.getInt("namXuatBan");
ketQua = new Sach(id, tenSach, giaBan, namXuatBan);
}
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public ArrayList<Sach> selectByCondition(String condition) {
ArrayList<Sach> ketQua = new ArrayList<Sach>();
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "SELECT * FROM sach where "+ condition;
System.out.println(sql);
ResultSet rs = st.executeQuery(sql);
// Bước 4:
while(rs.next()) {
String id = rs.getString("id");
String tenSach = rs.getString("tenSach");
float giaBan = rs.getFloat("giaBan");
int namXuatBan = rs.getInt("namXuatBan");
Sach sach = new Sach(id, tenSach, giaBan, namXuatBan);
ketQua.add(sach);
}
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
}
package dao;
import java.sql.Connection;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import database.JDBCUtil;
import model.KhachHang;
import model.Sach;
public class KhachHangDAO implements DAOInterface<KhachHang>{
public static KhachHangDAO getInstance() {
return new KhachHangDAO();
}
@Override
public int insert(KhachHang t) {
// TODO Auto-generated method stub
return 0;
}
@Override
public int update(KhachHang t) {
// TODO Auto-generated method stub
return 0;
}
@Override
public int delete(KhachHang t) {
// TODO Auto-generated method stub
return 0;
}
@Override
public ArrayList<KhachHang> selectAll() {
ArrayList<KhachHang> ketQua = new ArrayList<KhachHang>();
try {
// Bước 1: tạo kết nối đến CSDL
Connection con = JDBCUtil.getConnection();
// Bước 2: tạo ra đối tượng statement
Statement st = con.createStatement();
// Bước 3: thực thi câu lệnh SQL
String sql = "SELECT * FROM khachHang";
System.out.println(sql);
ResultSet rs = st.executeQuery(sql);
// Bước 4:
while(rs.next()) {
int id = rs.getInt("id");
String hoVaTen = rs.getString("hoVaTen");
Date ngaySinh = rs.getDate("ngaySinh");
String diaChi = rs.getString("diaChi");
KhachHang kh = new KhachHang(id, hoVaTen, ngaySinh, diaChi);
ketQua.add(kh);
}
// Bước 5:
JDBCUtil.closeConnection(con);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return ketQua;
}
@Override
public KhachHang selectById(KhachHang t) {
// TODO Auto-generated method stub
return null;
}
@Override
public ArrayList<KhachHang> selectByCondition(String condition) {
// TODO Auto-generated method stub
return null;
}
}
package test;
import java.util.ArrayList;
import java.util.Iterator;
import dao.SachDAO;
import model.Sach;
public class TestSachDAO {
public static void main(String[] args) {
ArrayList<Sach> list = SachDAO.getInstance().selectAll();
for (Sach sach : list) {
System.out.println(sach.toString());
}
System.out.println("---------------------");
Sach find = new Sach();
find.setId("LTC");
Sach sach2 = SachDAO.getInstance().selectById(find);
System.out.println(sach2);
System.out.println("---------------------");
ArrayList<Sach> list2 = SachDAO.getInstance().selectByCondition("giaBan<70000");
for (Sach sach : list2) {
System.out.println(sach.toString());
}
}
}
package test;
import java.util.ArrayList;
import dao.KhachHangDAO;
import dao.SachDAO;
import model.KhachHang;
import model.Sach;
public class TestKhachHangDAO {
public static void main(String[] args) {
ArrayList<KhachHang> list = KhachHangDAO.getInstance().selectAll();
for (KhachHang kh : list) {
System.out.println(kh.toString());
}
}
}
Không có nhận xét nào:
Đăng nhận xét