Hibernate tutorial step by step Bài số 1.

Introduction to Java Hibernate.
Phát triển một ứng dụng doanh nghiệp bao gồm rất nhiều các nỗ lực để lưu trữ các đối tượng bussiness object vào Database, Thông thường, 70% nỗ lực để phát triển ứng dụng thì viết code cho duy trì kết nối database và lưu các entities vào database. Hầu hết các ứng dụng doanh nghiệp đã phát triển sử dụng công nghệ Object Oriented.
Buiness logic bên trong luồng ứng dụng trong hình thức của object thay vì các thông điệp văn bản và nó được sử dụng ở giai đoạn lập trình cấu trúc ở đó chúng ta thiết lập một loạt biến để chạy hay chỉ ra trạng thái của entity.
Ngày nay công nghệ hướng đối tượng ra đời giải quyết những bài toán phức tạp trong cho business flow. Chỉ cần nói lưu objects vào database là một giai đoạn ở đó các đối tượng chuyển ngược trở lại văn bản text và lưu vào database. Để hiểu nhiều hơn, xem đoạn mã dưới đây.

Tạo một kết nối.
Class.forName(driverClass); java.sql.Connection connection = java.sql.DriverManager.getConnection(databaseUrl,databaseUser,databasePassword);

Giả sử chúng ta có một đối tượng của lớp User, và chúng ta cần lưu trữ object này xuống database. Xem hàm sau:
private void saveUser(User user) throws SQLException { PreparedStatement pstmt = connection.prepareStatement("insert into users values(?,?,?)"); pstmt.setInt(1,user.getId()); pstmt.setString(2,user.getName()); pstmt.setString(3,user.getEmail()); pstmt.setString(4,user.getAddress()); pstmt.execute(); }


Vấn đề của đoạn mã này là là nó rải rác khắp nnơi trong ứng dụng ảnh hưởng đến khả năng bảo trì ứng dụng . Có rất nhiều vấn đề với các tiếp cận kiểu này:
• Mã thì rải rác khắp nơi đến những nơi không quản lý nổi.
• Nếu thiết kế bị thay đổi sau khi phát triển ứng dụng, phải trả giá rất đắt để nhận ra những nơi cần phải thay đổi.
• Khó tìm và fix bug.
• Quản lý các kết nối database là một nhiệm vụ cực kỳ khó khăn vì mã SQL nằm tùm lum, kết nối database cũng vậy.
• Quản lý transaction là một nhiệm vụ phức tạp.

Vì những vấn đề trên, sửa lỗi là một giai đoạn của quy trình phát triển phần mềm mà làm cho ứng dụng trở nên cực kỳ đắt đỏ thậm chí sau khi đã hoàn thành.
Cần thiết phải có một cơ chế tách biệt mã persistent database và viết nó một cách hiệu quả để khi có một thay đổi trong thiết kế database, nó có thể dễ dàng cài đặt với niềm tìm không có nơi nào còn bug.
Thuận lợi của cơ sỡ dữ liệu quan hệ:
• Tìm kiếm và sắp xếp nhanh.
• làm việc được với dữ liệu lớn.
• làm việc trên nhóm dữ liệu.
• Joining, aggregating.
• Chia sẽ nhiều người dùng và nhiều vùng.
• Giải quyết tương tranh (Transaction)
• Hỗ trợ cho nhiều ứng dụng.
• Bảo đảm toàn vẹn.
• Ràng buộc nhiều cấp độ.
• Tách biệt giao tác.

Vấn đề của cơ sở dữ liệu quan hệ.
Mô hình dữ liệu không hỗ trợ tính đa hình.
Business logic trong server ứng dụng có thể trùng lặp tại database là các Store Procedure.
không gắn liền với các đối tượng ngoài đời thực.
Tốn code để gắn Java Object với database objects.

About Langthang

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

3 comments :

  1. bai viet ra hay va thu vi, minh cung dang tim hieu ve van de nay, cam on ban nhieu!

    ReplyDelete
  2. Toàn là copy của người ta rồi dịch lại. Đọc lủn củn vô cùng.

    ReplyDelete
  3. cái này translate google chứ có gì hay ! chán

    ReplyDelete