Java JDBC được sử dụng để kết nối đến database. Bạn có thể truy cập bất kỳ dữ liệu nào từ database, spreadsheets hoặc file bằng cách sử dụng JDBC.
Trong Java 7, Java đã giới thiệu các tính năng sau:
1) Nó cung cấp khả năng sử dụng câu lệnh try-with-resources để tự động đóng các tài nguyên kiểu Connection, ResultSet và Statement.
2) RowSet 1.1: Sự ra đời của interface RowSetFactory và lớp RowSetProvider, cho phép bạn tạo tất cả các hàng được trình điều khiển JDBC hỗ trợ.
Nó định nghĩa các bản cài đặt của factory được sử dụng để đạt được các kiểu khác nhau của kiểu RowSet.
Phương thức |
Mô tả |
---|---|
CachedRowSet createCachedRowSet() throws SQLException |
Nó tạo ra một thể hiện mới của FilteredRowSet. Nó ném SQLException, nếu không thể tạo một CachedRowSet. |
FilteredRowSet createFilteredRowSet() throws SQLException |
Nó tạo ra một thể hiện mới của FilteredRowSet. Nó ném SQLException, nếu một FilteredRowSet không thể được tạo ra. |
JdbcRowSet createJdbcRowSet() throws SQLException |
Nó tạo ra một thể hiện mới của JdbcRowSet. Nó ném SQLException, nếu không thể tạo JdbcRowSet. |
JoinRowSet createJoinRowSet() throws SQLException |
Nó tạo ra một thể hiện mới của JoinRowSet. Nó ném SQLException, nếu một JoinRowSet không thể được tạo ra. |
WebRowSet createWebRowSet() throws SQLException |
Nó tạo ra một thể hiện mới của WebRowSet. Nó ném SQLException, nếu một WebRowSet không thể được tạo ra. |
Nó là một factory API giúp các ứng dụng để có được bản cài đặt của RowSetFactory có thể được sử dụng để tạo ra các kiểu RowSet khác nhau.
Phương thức |
Mô tả |
---|---|
public static RowSetFactory newFactory() throws SQLException |
Nó tạo ra một thể hiện mới của một RowSetFactory. Nó ném SQLException, nếu lớp factory mặc định không thể được nạp hoặc khởi tạo. |
public static RowSetFactory newFactory(String factoryClassName, ClassLoader cl) throws SQLException |
Nó tạo ra một thể hiện mới của một RowSetFactory từ tên lớp factory được chỉ định. Chức năng này rất hữu ích khi có nhiều provider trong classpath. Nó cho phép kiểm soát nhiều hơn đối với ứng dụng vì nó có thể chỉ định provider nào nên được nạp. Nó ném SQLException, nếu factoryClassName là null, hoặc không thể tải lớp factory. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
Trong ví dụ trên, chúng ta sử dụng try-with-resources. Nó được sử dụng để đóng tài nguyên sau khi hoàn thành khối try. Bây giờ, bạn không cần đóng kết nối cơ sở dữ liệu một cách rõ ràng.
Đảm bảo bạn đang sử dụng phiên bản JDBC 4.0 trở lên và Java phiên bản 1.6 trở lên.
Trong các phiên bản trước của Java, bạn đã tạo ra các thể hiện của JdbcRowSet, CachedRowSet, FilteredRowSet vv bằng cách sử dụng lớp JdbcRowSetImpl.
Bây giờ, Java 7 đã thêm một RowSet phiên bản 1.1. Vì vậy, bạn có thể tạo thể hiện của JdbcRowSet bằng cách sử dụng giao diện RowSetFactory.
Nó lưu trữ (cache) dữ liệu vào bộ nhớ để có thể thực hiện các hoạt động trên dữ liệu riêng của nó chứ không phải là dữ liệu được lưu trữ trong cơ sở dữ liệu. Nó có thể hoạt động mà không được kết nối với nguồn dữ liệu của nó, đó là lý do tại sao, nó còn được gọi là disconnectedRowSet.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
Nó là một đối tượng được cải tiến ResultSet được sử dụng để duy trì kết nối đến một nguồn dữ liệu. Nó tương tự như ResultSet, nhưng sự khác biệt lớn là nó cung cấp tập hợp các thuộc tính và listener như một JavaBeans. Mục đích chính của JdbcRowSet là làm cho một ResultSet có thể cuộn và cập nhật được.
Trong ví dụ sau, chúng ta sẽ tạo thể hiện của JdbcRowSet bằng cách sử dụng cách tiếp cận mới.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
|
Kết quả:
3 David 6677028 3 David Bishop 6677028
Nguồn tin: viettuts.vn