BÀI TẬP LỚN MÔN CÔNG NGHỆ JAVA, ĐỀ TÀI Quản Lý Thí Sinh Dự Thi

48 626 4
BÀI TẬP LỚN MÔN CÔNG NGHỆ JAVA, ĐỀ TÀI Quản Lý Thí Sinh Dự Thi

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÀI TẬP LỚN MÔN, CÔNG NGHỆ JAVA, ĐỀ TÀI, Quản Lý Thí Sinh Dự Thi

BỘ GIÁO DỤC VÀ ĐẠO TẠO TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI CƠ SỞ II KHOA ĐIỆN-ĐIỆN TỬ BÀI TẬP LỚN MÔN CÔNG NGHỆ JAVA ĐỀ TÀI : Quản Lý Thí Sinh Dự Thi GIẢNG VIÊN : Lê Nhật Tùng SINH VIÊN : Nguyễn Ngọc Trí Lớp : CNTT-K55 MSV: 5551074045 Tp.Hồ Chí Minh ,ngày 12 tháng năm 2016 Nguyễn Ngọc Trí –CNTT-K55 MỤC LỤC CHƯƠNG I GIỚI THIỆU .3 Giới thiệu: 2Yêu cầu toán: CHƯƠNG II CÔNG NGHỆ SỬ DỤNG Java: 2MySQL: CHƯƠNG III PHÂN TÍCH BÀI TỐN 1Sơ đồ lớp: 2Sơ đồ sở liệu: CHƯƠNG IV HIỆN THỰC BÀI TOÁN Sử dụng: 2Source Code: 12 CHƯƠNG KẾT LUẬN 46 5.1 Ưu điểm: 46 5.2 Nhược điểm: .46 Nguyễn Ngọc Trí –CNTT-K55 CHƯƠNG I GIỚI THIỆU Giới thiệu: Java làVirtual Machine tảng phát triển ứng dụng phần mềm có vị trí lớn năm cuối kỉ 20, đầu kỉ 21 Đánh dấu trưởng thành mơ hình lập trình hướng đối tượng, coi tảng mang tính cách mạng ngành phần mềm Mơ hình máy ảo cho phép ứng dụng viết Java chạy nhiều hệ điều hành khác JAVA ngôn ngữ lập trình lập trình viên (nhà phát triển) sử dụng để viết ứng dụng dành cho máy tính mà sử dụng hàng ngày Nếu đơn ngơn ngữ lập trình khơng cần quan tâm tới vấn đề tải ứng dụng, phần mềm mà máy tính u cầu thực thi Java, bắt buộc bạn phải cài máy tính Ngồi ra, Java có plug-in cho trình duyệt web để số ứng dụng hiển thị trình duyệt Hiện với phát triển cơng nghệ thơng tin,thì việc áp dụng công nghệ thông tin vào công việc học tập ngày nhiều đa dạng, phong phú Vì nên giáo dục tăng cường mở nghành công nghệ thông tin, việc áp dụng công nghệ thông tin giúp quản Java lý thông tin bảo mật tốt hơn, đồng hơn, hiệu an tồn Trong tuyển sinh, cơng nghệ thơng tin áp dụng triệt để, đem lại hiệu to lớn Nguyễn Ngọc Trí –CNTT-K55 2u cầu tốn: 2.1u cầu chức năng:  Nhập thơng tin thí sinh  Nhập điểm thí sinh  Xem thơng tin điểm thí sinh  Sửa thơng tin điểm thí sinh  Xóa thơng tin điểm thí sinh 2.2u cầu sử dụng:  Chương trình có giao diện  Giao diệm đơn giản dể sử dụng  Chương trình có khả nâng cấp CHƯƠNG II CƠNG NGHỆ SỬ DỤNG Java: Ngơn ngữ Java tạo James Gosling dự án Green Sun MicroSystems nhằm phát triển phần mềm cho thiết bị dân dụng Ngơn ngữ hồn tồn hướng đối tượng Ngơn ngữ an tồn: hạn chế thao tác nguy hiểm cho máy tính thật Khả Là ngôn ngữ bậc cao C, C++, Perl, SmallTalk, dùng để tạo ứng dụng để giải vấn đề số, xử lý văn bản, tạo trò chơi, nhiều thứ khác.Có mơi trường lập trình đồ họa Visual Java, Symantec Cafe, Jbuilder, Jcreator, Có khả truy cập liệu từ xa thông qua cầu nối JDBC (Java DataBase Connectivity)Hỗ trợ lớp hữu ích, tiện lợi lập trình ứng dụng mạng (Socket) truy xuất Web.Hỗ trợ lập trình phân tán (Remote Method Invocation ) cho phép ứng dụng xử lý phân tán máy tính khác Đặc Điểm Ngơn ngữ hồn tồn hướng đối tượng.Ngơn ngữ đa cho phép chương trình thực thi hệ điều hành khác (MS Windows, UNIX, Linux) mà khơng phải biên dịch lại chương trình Phương châm java "Viết lần , Chạy nhiều nền" (Write Once, Run Anywhere).Ngôn ngữ đa luồng, cho Nguyễn Ngọc Trí –CNTT-K55 phép chương trình có nhiều luồng điều khiển thực thi song song nhau, hữu ích cho xử lý song song.Ngôn ngữ phân tán, cho phép đối tượng ứng dụng phân bố thực thi máy tính khác nhau.Ngơn ngữ động, cho phép mã lệnh chương trình tải từ máy tính máy người yêu cầu thực thi chương trình.Ngơn ngữ an tồn, tất thao tác truy xuất vào thiết bị vào thực máy ảo nhờ hạn chế thao tác nguy hiểm cho máy tính thật.Ngơn ngữ đơn giản, dễ học, kiến trúc chương trình đơn giản, sáng Sử Dụng Sử dụng để xem phim nhửng thứ khác Java tự động, nghỉa bạn cần thực thường miển máy đả có java 2MySQL: MySQL hệ quản trị sở liệu tự nguồn mở phổ biến giới nhà phát triển ưa chuộng trình phát triển ứng dụng Vì MySQL sở liệu tốc độ cao, ổn định dễ sử dụng, có tính khả chuyển, hoạt động nhiều hệ điều hành cung cấp hệ thống lớn hàm tiện ích mạnh Với tốc độ tính bảo mật cao, MySQL thích hợp cho ứng dụng có truy cập CSDL internet MySQL miễn phí hồn tồn bạn tải MySQL từ trang chủ Nó có nhiều phiên cho hệ điều hành khác nhau: phiên Win32 cho hệ điều hành dòng Windows, Linux, Mac OS X MySQL ví dụ Hệ Quản trị Cơ sở liệu quan hệ sử dụng Ngơn ngữ truy vấn có cấu trúc (SQL) MySQL sử dụng cho việc bổ trợ PHP, Perl, nhiều ngơn ngữ khác, làm nơi lưu trữ thông tin trang web viết PHP hay Perl, Khả năng: MySQL phần mềm quản trị CSDL dạng server-based (gần tương đương với SQL Server Microsoft) MySQL quản lý liệu thông qua CSDL, CSDL có nhiều bảng quan hệ chứa liệu MySQL có chế phân quyền người sử dụng riêng, người dùng quản lý nhiều CSDL khác nhau, người dùng có tên truy cập (user name) mật tương ứng để truy xuất đến CSDL Khi ta truy vấn tới CSDL MySQL, ta phải cung cấp tên truy cập mật tài khỏan có quyền sử dụng CSDL Nếu khơng, khơng làm giống quyền chứng thực người dung SQL Server Nguyễn Ngọc Trí –CNTT-K55 CHƯƠNG III PHÂN TÍCH BÀI TỐN 1Sơ đồ lớp:  Class: Aboutme Nội dung: Thơng tin chương trình Các thư viện: Java.Swing.*, Javax.awt.* Thiện: Cửa sổ Jframe Class: ConnectDatabase Nội dung: Tạo kết nối với sở liệu Các thư viện: Java.sql.* Thể hiện: Kết nối với CSDL, trả kết kết nối: thành công/không thành công, ngắt kết nối với CSDL  Class: student Nội dung: Giao diện chương trình Thư viện: Java.Swing.*, Javax.awt.*, : Java.sql.* Thể hiện: Cửa sổ Jframe, thao tác với người dùng qua nhấp chuột, nhập text,…  Class: StudentDAO Nguyễn Ngọc Trí –CNTT-K55 Nội dung: Giao diện chương trình Thư viện: Java.sql.* Thể hiện: Thao tác đưa liệu vao sở dữu liệu, Thực nhiệm vụ xóa, thêm, sửa liệu  Class: ThiSinh Nội dung: lớp thí sinh chứa thuộc tính thí sinh Các thuộc tính: Mathisinh int Diemtoan double Tenthisinh String Diemly double Ngaysinh Date Diemhoa double Gioitinh boolean Thư viện: Java.sql.* Thể hiện: Các hàm khởi tạo, get, set  Class: TinhThanh Nội dung: lớp tỉnh thành, thơng tin mã tỉnh tên tỉnh Các thuộc tính: matinh (int), tentinh (String) Thể hiện: Các hàm khởi tạo, get, set 2Sơ đồ sở liệu:  Tên CSDL: student  Lược đồ CSDL: ThiSinh (maThiSinh, tenThiSinh, maQueQuan, ngaysinh, gioitinh, diemToan, diemLy, diemHoa) Tinhthanh (maTinh, tenTinh)  Ràng buộc: TinhThanh Nguyễn Ngọc Trí –CNTT-K55 STT Thuộc tính Mơ tả KDL Ràng buộc matinh Mã tỉnh int PK tentinh Tên tỉnh Text ThiSinh STT Thuộc tính Mơ tả KDL Ràng buộc maThiSinh Mã thí sinh int PK tenThiSinh Tên thí sinh Text maQueQua n Mã quê quán int ngaysinh Ngày sinh Date gioitinh Giới tính Varchar diemToan Điểm Double Nguyễn Ngọc Trí –CNTT-K55 tốn diemLy Điểm lý Double diemHoa Điểm hóa double CHƯƠNG IV HIỆN THỰC BÀI TỐN Sử dụng: Nguyễn Ngọc Trí –CNTT-K55 Giao diện chương trình -Danh sách thí sinh ban đầu thí sinh có sẵn CSDL -Tìm kiếm: nhập tên tỉnh thành/ mã sinh viên vào BirthPlace/StudentID ấn nút FITLER Nguyễn Ngọc Trí –CNTT-K55 JOptionPane.showMessageDialog(student.this, "Them khong cong"); } catch (Exception e2) { JOptionPane.showMessageDialog(null, "Error: " + e2.getMessage().toLowerCase().toString(), "Error", JOptionPane.ERROR_MESSAGE); } } if (kt == 1) { try { int maThiSinh = Integer.parseInt(textField_ID.getText()); String tenThiSinh = textField_Name.getText(); int maTinh = 0; String tenTinh = textField_Place.getText(); TinhThanh maQueQuan = new TinhThanh(maTinh, tenTinh); // String maQueQuan = textField_Place.getText(); int = Integer.parseInt(comboBox_ngay.getSelectedItem() + ""); int thang = Integer.parseInt(comboBox_thang.getSelectedItem() + ""); int nam = Integer.parseInt(comboBox_nam.getSelectedItem() + ""); Date ngaySinh = new Date(nam - 1900, thang - 1, ngay); boolean gioiTinh = rdbtnFemale.isSelected() ? true : false; double diemToan = Double.parseDouble(textField_Math.getText()); double diemLy = Double.parseDouble(textField_Physical.getText()); double diemHoa = Double.parseDouble(textField_Chemistry.getText()); ThiSinh thiSinh = new ThiSinh(maThiSinh, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa); boolean kt = StudentDAO.suaThiSinh(thiSinh); loadThiSinh(); textField_ID.setEditable(false); textField_Name.setEditable(false); textField_Place.setEditable(false); textField_Physical.setEditable(false); rdbtnFemale.setEnabled(false); rdbtnMale.setEnabled(false); textField_Math.setEditable(false); textField_Physical.setEditable(false); Nguyễn Ngọc Trí –CNTT-K55 textField_Chemistry.setEditable(false); comboBox_ngay.setEnabled(false); comboBox_thang.setEnabled(false); comboBox_nam.setEnabled(false); textField_Total.setEditable(false); if (kt) JOptionPane.showMessageDialog(student.this, "Sua cong"); else JOptionPane.showMessageDialog(student.this, "Sua khong cong"); } catch (Exception e2) { JOptionPane.showMessageDialog(null, "Error: " + e2.getMessage().toLowerCase().toString(), "Error", JOptionPane.ERROR_MESSAGE); } } } }); btnOk.setFont(new Font("Times New Roman", Font.BOLD, 15)); btnOk.setForeground(new Color(0, 0, 255)); btnOk.setBackground(new Color(255, 248, 220)); JButton btnCancel = new JButton("CANCEL"); btnCancel.setBounds(547, 11, 97, 23); panel_3.add(btnCancel); btnCancel.setFont(new Font("Times New Roman", Font.BOLD, 15)); btnCancel.setForeground(new Color(0, 0, 255)); btnCancel.setBackground(new Color(255, 248, 220)); setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[] { textField_BirthPlace, textField_StudentID, btnFiltre, textField_ID, textField_Name, textField_Place, rdbtnMale, rdbtnFemale, textField_Math, textField_Physical, textField_Chemistry, textField_Total })); } public static void loadThiSinh() { ArrayList danhsach = StudentDAO.getThiSinh(); Nguyễn Ngọc Trí –CNTT-K55 // DefaultTableCellRenderer centerRenderer = new DefaultTableCellRenderer(); // centerRenderer.setHorizontalAlignment(DefaultTableCellRenderer.CENTER); DefaultTableModel model = new DefaultTableModel(); int i = 1; model.addColumn("No"); model.addColumn("Mã thí sinh"); model.addColumn("Họ tên"); model.addColumn("Quê quán"); model.addColumn("Ngày sinh"); model.addColumn("Giới tính"); model.addColumn("Điểm tốn"); model.addColumn("Điểm lý"); model.addColumn("Điểm hóa"); for (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(), thiSinh.getDiemLy(), thiSinh.getDiemHoa() }; model.addRow(obj); i++; } table.setModel(model); } public static void loadThiSinhTheoID(String ID) { ArrayList danhsach = StudentDAO.getThiSinhTheoID(ID); DefaultTableModel model = new DefaultTableModel(); int i = 1; model.addColumn("No"); model.addColumn("Mã thí sinh"); model.addColumn("Họ tên"); model.addColumn("Quê quán"); model.addColumn("Ngày sinh"); model.addColumn("Giới tính"); model.addColumn("Điểm tốn"); Nguyễn Ngọc Trí –CNTT-K55 model.addColumn("Điểm lý"); model.addColumn("Điểm hóa"); for (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(), thiSinh.getDiemLy(), thiSinh.getDiemHoa() }; model.addRow(obj); i++; } table.setModel(model); } public static void loadThiSinhTheoNoiSinh(String noiSinh) { int i = 1; ArrayList danhsach = StudentDAO.getThiSinhTheoNoiSinh(noiSinh); DefaultTableModel model = new DefaultTableModel(); model.addColumn("No"); model.addColumn("Mã thí sinh"); model.addColumn("Họ tên"); model.addColumn("Quê quán"); model.addColumn("Ngày sinh"); model.addColumn("Giới tính"); model.addColumn("Điểm tốn"); model.addColumn("Điểm lý"); model.addColumn("Điểm hóa"); for (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(), thiSinh.getDiemLy(), thiSinh.getDiemHoa() }; model.addRow(obj); i++; } table.setModel(model); } Nguyễn Ngọc Trí –CNTT-K55 public static void loadThiSinhTheoNoiSinhVaID(String noiSinh, int ID) { DefaultTableCellRenderer centerRenderer = new DefaultTableCellRenderer(); centerRenderer.setHorizontalAlignment(DefaultTableCellRenderer.CENTER); ArrayList danhsach = StudentDAO.getThiSinhTheoNoiSinhVaID(noiSinh, ID); DefaultTableModel model = new DefaultTableModel(); int i = 1; model.addColumn("No"); model.addColumn("Mã thí sinh"); model.addColumn("Họ tên"); model.addColumn("Q qn"); model.addColumn("Ngày sinh"); model.addColumn("Giới tính"); model.addColumn("Điểm tốn"); model.addColumn("Điểm lý"); model.addColumn("Điểm hóa"); for (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(), thiSinh.getDiemLy(), thiSinh.getDiemHoa() }; model.addRow(obj); i++; } table.setModel(model); } } 2.4 studentDAO import java.sql.Connection; import java.sql.Date; import java.sql.PreparedStatement; import java.sql.ResultSet; Nguyễn Ngọc Trí –CNTT-K55 import java.sql.Statement; import java.util.ArrayList; public class StudentDAO { public static boolean themThiSinh(ThiSinh thiSinh) { int i = 0; Connection c = null; try { c = ConnectDatabase.getConnection(); PreparedStatement prest = c.prepareStatement( "INSERT INTO thisinh(maThiSinh, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa) " + "VALUES(?, ? , (SELECT tinhthanh.matinh FROM tinhthanh WHERE tinhthanh.tentinh = ?), ?, ?, ? , ?, ?);"); prest.setInt(1, thiSinh.getMaThiSinh()); prest.setString(2, thiSinh.getTenThiSinh()); prest.setString(3, thiSinh.getQueQuan().getTenTinh()); prest.setDate(4, thiSinh.getNgaySinh()); prest.setString(5, thiSinh.getGT()); prest.setDouble(6, thiSinh.getDiemToan()); prest.setDouble(7, thiSinh.getDiemLy()); prest.setDouble(8, thiSinh.getDiemHoa()); i = prest.executeUpdate(); ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return i > 0; } public static boolean xoaThiSinh(int ID) { int i = 0; Connection c = null; try { c = ConnectDatabase.getConnection(); Nguyễn Ngọc Trí –CNTT-K55 PreparedStatement prest = c.prepareStatement("DELETE FROM thisinh WHERE maThiSinh =?"); prest.setInt(1, ID); i = prest.executeUpdate(); ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return i > 0; } public static boolean suaThiSinh(ThiSinh thiSinh) { int i = 0; Connection c = null; try { // lay ket noi c = ConnectDatabase.getConnection(); // tao doi tuong statement PreparedStatement prest = c.prepareStatement( "UPDATE thisinh SET tenThiSinh = ?, maQueQuan = (SELECT tinhthanh.matinh FROM tinhthanh " + "WHERE tinhthanh.tentinh = ?)," + " ngaySinh = ?, gioiTinh = ?, diemToan = ?, diemLy = ?, diemHoa = ? WHERE maThiSinh = ?"); // truyen gia tri prest.setString(1, thiSinh.getTenThiSinh()); prest.setString(2, thiSinh.getQueQuan().getTenTinh()); prest.setDate(3, thiSinh.getNgaySinh()); prest.setBoolean(4, thiSinh.isGioiTinh()); prest.setDouble(5, thiSinh.getDiemToan()); prest.setDouble(6, thiSinh.getDiemLy()); prest.setDouble(7, thiSinh.getDiemHoa()); prest.setInt(8, thiSinh.getMaThiSinh()); // thuc thi cau lenh i = prest.executeUpdate(); ConnectDatabase.closeConnection(c); Nguyễn Ngọc Trí –CNTT-K55 } catch (Exception e) { e.printStackTrace(); } return i > 0; } public static ArrayList getThiSinh() { int i = 0; Connection c = null; ArrayList arr = new ArrayList(); try { // lay ket noi c = ConnectDatabase.getConnection(); // tao doi tuong statement PreparedStatement prest = c prepareStatement("SELECT * FROM thisinh,tinhthanh WHERE thisinh.maQueQuan = tinhthanh.maTinh"); // truyen gia tri // prest.setInt(1, maThiSinh); // thuc thi cau lenh ResultSet rs = prest.executeQuery(); while (rs.next()) { int ID = rs.getInt("maThiSinh"); String tenThiSinh = rs.getString("tenThiSinh"); int maTinh = 0; String tenTinh = rs.getString("tenTinh"); TinhThanh maQueQuan = new TinhThanh(maTinh, tenTinh); // String maQueQuan = rs.getString("maQueQuan"); Date ngaySinh = rs.getDate("ngaySinh"); boolean gioiTinh = rs.getBoolean("gioiTinh"); double diemToan = rs.getDouble("diemToan"); double diemLy = rs.getDouble("diemLy"); double diemHoa = rs.getDouble("diemHoa"); Nguyễn Ngọc Trí –CNTT-K55 ThiSinh thiSinh = new ThiSinh(ID, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa); arr.add(thiSinh); } ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return arr; } public static ArrayList getThiSinhTheoID(String id) { int i = 0; Connection c = null; ArrayList arr = new ArrayList(); try { // lay ket noi c = ConnectDatabase.getConnection(); // tao doi tuong statement PreparedStatement prest = c prepareStatement("SELECT * FROM thisinh, tinhthanh WHERE thisinh.maThiSinh = ? AND " + "thisinh.maQueQuan = tinhthanh.maTinh"); // truyen gia tri prest.setString(1, id); // thuc thi cau lenh ResultSet rs = prest.executeQuery(); while (rs.next()) { int ID = rs.getInt("maThiSinh"); String tenThiSinh = rs.getString("tenThiSinh"); int maTinh = 0; String tenTinh = rs.getString("tenTinh"); Nguyễn Ngọc Trí –CNTT-K55 TinhThanh maQueQuan = new TinhThanh(maTinh, tenTinh); // String maQueQuan = rs.getString("maQueQuan"); Date ngaySinh = rs.getDate("ngaySinh"); boolean gioiTinh = rs.getBoolean("gioiTinh"); double diemToan = rs.getDouble("diemToan"); double diemLy = rs.getDouble("diemLy"); double diemHoa = rs.getDouble("diemHoa"); ThiSinh thiSinh = new ThiSinh(ID, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa); arr.add(thiSinh); } ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return arr; } public static ArrayList getThiSinhTheoNoiSinh(String noiSinh) { int i = 0; Connection c = null; ArrayList arr = new ArrayList(); try { // lay ket noi c = ConnectDatabase.getConnection(); // tao doi tuong statement PreparedStatement prest = c.prepareStatement( "SELECT * FROM thisinh, tinhthanh WHERE tinhthanh.tenTinh = ? AND thisinh.maQueQuan = tinhthanh.maTinh"); // truyen gia tri prest.setString(1, noiSinh); // thuc thi cau lenh ResultSet rs = prest.executeQuery(); Nguyễn Ngọc Trí –CNTT-K55 while (rs.next()) { int ID = rs.getInt("maThiSinh"); String tenThiSinh = rs.getString("tenThiSinh"); int maTinh = 0; String tenTinh = rs.getString("tenTinh"); TinhThanh maQueQuan = new TinhThanh(maTinh, tenTinh); // String maQueQuan = rs.getString("maQueQuan"); Date ngaySinh = rs.getDate("ngaySinh"); boolean gioiTinh = rs.getBoolean("gioiTinh"); double diemToan = rs.getDouble("diemToan"); double diemLy = rs.getDouble("diemLy"); double diemHoa = rs.getDouble("diemHoa"); ThiSinh thiSinh = new ThiSinh(ID, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa); arr.add(thiSinh); } ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return arr; } public static ArrayList getThiSinhTheoNoiSinhVaID(String noiSinh, int id) { int i = 0; Connection c = null; ArrayList arr = new ArrayList(); try { // lay ket noi c = ConnectDatabase.getConnection(); // tao doi tuong statement PreparedStatement prest = c Nguyễn Ngọc Trí –CNTT-K55 .prepareStatement("SELECT * FROM thisinh, tinhthanh WHERE tenTinh like ? AND maThiSinh like ?"); prest.setString(1, noiSinh); prest.setInt(2, id); ResultSet rs = prest.executeQuery(); while (rs.next()) { int ID = rs.getInt("maThiSinh"); String tenThiSinh = rs.getString("tenThiSinh"); int maTinh = 0; String tenTinh = rs.getString("tenTinh"); TinhThanh maQueQuan = new TinhThanh(maTinh, tenTinh); // String maQueQuan = rs.getString("maQueQuan"); Date ngaySinh = rs.getDate("ngaySinh"); boolean gioiTinh = rs.getBoolean("gioiTinh"); double diemToan = rs.getDouble("diemToan"); double diemLy = rs.getDouble("diemLy"); double diemHoa = rs.getDouble("diemHoa"); ThiSinh thiSinh = new ThiSinh(ID, tenThiSinh, maQueQuan, ngaySinh, gioiTinh, diemToan, diemLy, diemHoa); arr.add(thiSinh); } ConnectDatabase.closeConnection(c); } catch (Exception e) { e.printStackTrace(); } return arr; } public static void main(String[] args) { } } 4.4 ThiSinh import java.sql.Date; public class ThiSinh { int maThiSinh; Nguyễn Ngọc Trí –CNTT-K55 String tenThiSinh; TinhThanh queQuan; Date ngaySinh; boolean gioiTinh; double diemToan; double diemLy; double diemHoa; public int getMaThiSinh() { return maThiSinh; } public void setMaThiSinh(int maThiSinh) { this.maThiSinh = maThiSinh; } public String getTenThiSinh() { return tenThiSinh; } public void setTenThiSinh(String tenThiSinh) { this.tenThiSinh = tenThiSinh; } public TinhThanh getQueQuan() { return queQuan; } public void setQueQuan(TinhThanh queQuan) { this.queQuan = queQuan; } public Date getNgaySinh() { return ngaySinh; } public void setNgaySinh(Date ngaySinh) { this.ngaySinh = ngaySinh; } public boolean isGioiTinh() { return gioiTinh; } Nguyễn Ngọc Trí –CNTT-K55 public void setGioiTinh(boolean gioiTinh) { this.gioiTinh = gioiTinh; } public double getDiemToan() { return diemToan; } public void setDiemToan(double diemToan) { this.diemToan = diemToan; } public double getDiemLy() { return diemLy; } public void setDiemLy(double diemLy) { this.diemLy = diemLy; } public double getDiemHoa() { return diemHoa; } public void setDiemHoa(double diemHoa) { this.diemHoa = diemHoa; } public ThiSinh(int maThiSinh, String tenThiSinh, TinhThanh queQuan, Date ngaySinh, boolean gioiTinh, double diemToan, double diemLy, double diemHoa) { super(); this.maThiSinh = maThiSinh; this.tenThiSinh = tenThiSinh; this.queQuan = queQuan; this.ngaySinh = ngaySinh; this.gioiTinh = gioiTinh; this.diemToan = diemToan; this.diemLy = diemLy; this.diemHoa = diemHoa; } Nguyễn Ngọc Trí –CNTT-K55 public String getGT() { String gt = ""; if (gioiTinh == true) gt = "Nam"; else gt = "Nu"; return gt; } } 4.5 TinhThanh public class TinhThanh { int maTinh; String tenTinh; public int getMaTinh() { return maTinh; } public void setMaTinh(int maTinh) { this.maTinh = maTinh; } public String getTenTinh() { return tenTinh; } public void setTenTinh(String tenTinh) { this.tenTinh = tenTinh; } public TinhThanh(int maTinh, String tenTinh) { super(); this.maTinh = maTinh; this.tenTinh = tenTinh; } } CHƯƠNG KẾT LUẬN 5.1 Ưu điểm: Nguyễn Ngọc Trí –CNTT-K55 ... (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(),... Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(), thiSinh.getDiemLy(), thiSinh.getDiemHoa()... (ThiSinh thiSinh : danhsach) { Object[] obj = new Object[] { i, thiSinh.getMaThiSinh(), thiSinh.getTenThiSinh(), thiSinh.getQueQuan().getTenTinh(), thiSinh.getNgaySinh(), thiSinh.getGT(), thiSinh.getDiemToan(),

Ngày đăng: 28/09/2019, 09:46

Từ khóa liên quan

Mục lục

  • CHƯƠNG I. GIỚI THIỆU

    • 1 Giới thiệu:

    • 2Yêu cầu bài toán:

    • CHƯƠNG II. CÔNG NGHỆ SỬ DỤNG

      • 1. Java:

      • 2MySQL:

      • CHƯƠNG III. PHÂN TÍCH BÀI TOÁN

        • 1Sơ đồ các lớp:

        • 2Sơ đồ cơ sở dữ liệu:

        • CHƯƠNG IV. HIỆN THỰC BÀI TOÁN

          • 1. Sử dụng:

          • 2Source Code:

          • CHƯƠNG 5. KẾT LUẬN

            • 5.1. Ưu điểm:

            • 5.2. Nhược điểm:

Tài liệu cùng người dùng

Tài liệu liên quan