Sakura
Thú CƯng :
Số bài viết : 1124 Điểm : 1688 Được cảm ơn : 35 Ngày sinh : 03/11/1990 Tham gia ngày : 16/03/2010 Tuổi : 34 Đến từ : Bình Dương Ngề nghiệp : IT Student
| Tiêu đề: [Giải đề Java] Câu 2 - CSDL 4/12/2010, 18:30 | |
| Đây là bài giải câu 2, các bạn xem xem còn lỗi gì để chúng ta kịp thời chỉnh sửa. - Code:
-
/** * @(#)ThiJavaCau2.java * Câu 2: *Cho một CSDL được quản lý bằng ACCESS có tên là QLNV.MDB *Mô tả thông tin bảng NhanVien : * - MaNhanVien: mã nhân viên (kiểu dữ liệu: AutoNumber) * - TenNhanVien: tên nhân viên (kiểu dữ liệu Text) * - Chucvu: chức vụ (kiểu dữ liệu Text) * - GioiTinh: giới tính (kiểu dữ liệu Text) * (Lưu ý: tất cả thông tin của nhân viên đều bắt buộc nhập) * Yêu cầu viết một chương trình bao gồm các công việc sau: * a. Lập trình thiết kế giao diện như Hình 1 (yêu cầu sử dụng Frame) * b. Lập trình xử lý cho nút lệnh “ThemMoi” để thêm dữ liệu vào bảng và nút lệnh “thoat” để thoát khỏi chương trình. * Mô tả thêm: sau khi nhập vào đầy đủ các thông tin họ tên, chức vụ, giới tính của nhân viên, bấm vào nút “ThemMoi’ thì thông tin của nhân viên sẽ được lưu vào CSDL. * * Lưu ý: khi các bạn làm, có thể bỏ qua phần Design này (mất thời gian) * @author:Nicholas Tse * @version 1.00 2010/12/4 */ import java.awt.event.*; import java.sql.*; import javax.swing.*; public class ThiJavaCau2 extends JFrame implements ActionListener { JLabel lbGioiThieu; JLabel lbHoTen; JLabel lbChucVu; JLabel lbGioiTinh; JTextField txtHoTen; JTextField txtChucVu; JTextField txtGioiTinh; JButton btnThem; JButton btnThoat; public ThiJavaCau2(String title) { setTitle(title); setBounds(400, 200, 275, 275); setDefaultCloseOperation(EXIT_ON_CLOSE); setResizable(false); setLayout(null); lbGioiThieu = new JLabel("THEM NHAN VIEN MOI"); lbGioiThieu.setBounds(50, 10, 200, 30); add(lbGioiThieu); lbHoTen = new JLabel("Ho ten"); lbHoTen.setBounds(10, 50, 50, 20); add(lbHoTen); lbChucVu = new JLabel("Chuc vu"); lbChucVu.setBounds(10, 90, 50, 20); add(lbChucVu); lbGioiThieu = new JLabel("Gioi tinh"); lbGioiThieu.setBounds(10, 130, 50, 20); add(lbGioiThieu); txtHoTen = new JTextField(16); txtHoTen.setBounds(70, 50, 150, 20); add(txtHoTen); txtChucVu = new JTextField(16); txtChucVu.setBounds(70, 90, 150, 20); add(txtChucVu); txtGioiTinh = new JTextField(16); txtGioiTinh.setBounds(70, 130, 150, 20); add(txtGioiTinh); btnThem = new JButton("Them"); btnThem.setBounds(10, 170, 100, 30); btnThem.addActionListener(this); add(btnThem); btnThoat = new JButton("Them"); btnThoat.setBounds(120, 170, 100, 30); btnThoat.addActionListener(this); add(btnThoat); } public static void main(String[] args) { ThiJavaCau2 java = new ThiJavaCau2("Thi ly thuyet Java"); java.setVisible(true); } private void ConnecToODBC() { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); } catch(Exception e) { System.out.println (e.getMessage()); } } private void Add(String ten, String chucvu, String gioitinh) { ConnecToODBC(); Connection con = null; Statement stm = null; try { String url = "jdbc:odbc:Driver=Microsoft Access Driver (*.mdb);DBQ=QLNV.MDB;readonly=false"; con = DriverManager.getConnection(url, "", ""); stm = con.createStatement(); String query = "Insert Into tblNHANVIEN(TENNHANVIEN, CHUCVU, GIOITINH) values('" + ten + "', '" + chucvu + "', '" + gioitinh + "')"; stm.executeUpdate(query); System.out.println ("Them thanh cong!"); } catch(Exception e) { System.out.println ("Loi: " + e.getMessage()); } finally { try { stm.close(); con.close(); } catch(Exception e) { System.out.println (e.getMessage()); } } } public void actionPerformed(ActionEvent e) { if(e.getSource() == btnThem) { String ten = txtHoTen.getText(); String chucvu = txtChucVu.getText(); String gioitinh = txtGioiTinh.getText(); if(ten.length() != 0 && chucvu.length() != 0 && gioitinh.length() != 0) { Add(ten, chucvu, gioitinh); } else { System.out.println ("Khong the them"); } } else if(e.getSource() == btnThoat) { System.exit(1); } } } Link toàn bộ bài (+DataBase): [You must be registered and logged in to see this link.] |
|