http://vietjack.com/java_jdbc/index.jsp Copyright © vietjack.com RowSet Interface JDBC Nếu cần thao tác với JavaBean, bạn nên sử dụng Interface Nó bổ sung hỗ trợ cho JDBC tới mơ hình thành phần JavaBean Rowset Interface cung cấp tập hợp thuộc tính JavaBean cho phép instance RowSet để cấu hình để kết nối tới Data source JDBC đọc liệu từ Data source Để truyền liệu đầu vào tới thuộc tính command Rowset, bạn sử dụng phương thức setter bao gồm setInt, setBytes, setString, … Command truy vấn SQL mà Rowset sử dụng lấy liệu từ Relational Database Dưới cách để tạo thực thi RowSet: JdbcRowSet rowSet = RowSetProvider.newFactory().createJdbcRowSet(); rowSet.setUrl("jdbc:mysql://localhost/sinhvien"); rowSet.setUsername("root"); rowSet.setPassword("123456"); rowSet.setCommand("SELECT * FROM sinhvienk60"); rowSet.execute(); Đây cách thức để lấy instance Rowset JDK7 Sử dụng RowSet mang lại cho bạn lợi sau: • Sử dụng dễ dàng linh động • Theo mặc định, Scrollable Updatable Ví dụ RowSet JDBC RowSet hỗ trợ xử lý kiện, nhiên để đơn giản, ví dụ này, khơng đề cập đến phần code để thực tác vụ package com.vietjack.jdbc; import javax.sql.rowset.JdbcRowSet; import javax.sql.rowset.RowSetProvider; public class ViDuJDBC { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); //Tao va thuc thi RowSet JdbcRowSet rowSet = RowSetProvider.newFactory().createJdbcRowSet(); rowSet.setUrl("jdbc:mysql://localhost/sinhvien"); rowSet.setUsername("root"); rowSet.setPassword("123456"); rowSet.setCommand("SELECT * FROM sinhvienk60"); rowSet.execute(); while (rowSet.next()) { // Tao su kien tro di chuyen System.out.println("\nMSSV: " + rowSet.getInt(1)); System.out.println("\nHo: " + rowSet.getString(2)); System.out.println("\nTen: " + http://vietjack.com/ Trang chia sẻ các bài học online miễn phí http://vietjack.com/java_jdbc/index.jsp Copyright © vietjack.com rowSet.getString(3)); + rowSet.getInt(4)); } System.out.println("\nDiem thi: " } } Bạn chép, dán lưu ví dụ ViDuJDBC.java, sau chạy chương trình Java cho kết quả: Ví dụ RowSet xử lý kiện Để thực xử lý kiện với RowSet, bạn cần bổ sung thêm instance RowSetLintener phương thức addRowSetListener RowSet Bạn cần triển khai phương thức sau RowSetListenner Interface: • public void cursorMoved(RowSetEvent event); • public void rowChanged(RowSetEvent event); • public void rowSetChanged(RowSetEvent event); http://vietjack.com/ Trang chia sẻ các bài học online miễn phí http://vietjack.com/java_jdbc/index.jsp Copyright © vietjack.com Bây giờ, bạn theo dõi ví dụ sau Trong ví dụ này, lấy liệu thực số tác vụ bổ sung trỏ di chuyển, thay đổi rowset thay đổi Hoạt động xử lý ngoại lệ thực sử dụng ResultSet package com.vietjack.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import javax.sql.RowSetEvent; import javax.sql.RowSetListener; import javax.sql.rowset.JdbcRowSet; import javax.sql.rowset.RowSetProvider; public class ViDuJDBC { public static void main(String[] args) throws Exception { Class.forName("com.mysql.jdbc.Driver"); //Creating and Executing RowSet JdbcRowSet rowSet = RowSetProvider.newFactory().createJdbcRowSet(); rowSet.setUrl("jdbc:mysql://localhost/sinhvien"); rowSet.setUsername("root"); rowSet.setPassword("123456"); rowSet.setCommand("SELECT * FROM sinhvienk60"); rowSet.execute(); //Bo sung them Listener va di chuyen qua RowSet rowSet.addRowSetListener(new MyListener()); while (rowSet.next()) { // Tao su kien tro di chuyen System.out.println("\nMSSV: " + rowSet.getInt(1)); System.out.println("\nHo: " + rowSet.getString(2)); System.out.println("\nTen: " + rowSet.getString(3)); System.out.println("\nDiem thi: " + rowSet.getInt(4)); } } } class MyListener implements RowSetListener { public void cursorMoved(RowSetEvent event) { System.out.println("\nCon tro di chuyen "); } public void rowChanged(RowSetEvent event) { System.out.println("\n Con tro thay doi "); } public void rowSetChanged(RowSetEvent event) { System.out.println("\nRowSet thay doi "); } } Bạn chép, dán lưu ví dụ ViDuJDBC.java, sau chạy chương trình Java cho kết quả: http://vietjack.com/ Trang chia sẻ các bài học online miễn phí ... Class.forName("com.mysql .jdbc. Driver"); //Creating and Executing RowSet JdbcRowSet rowSet = RowSetProvider.newFactory().createJdbcRowSet(); rowSet. setUrl( "jdbc: mysql://localhost/sinhvien"); rowSet. setUsername("root");... java.sql.Statement; import javax.sql.RowSetEvent; import javax.sql.RowSetListener; import javax.sql .rowset. JdbcRowSet; import javax.sql .rowset. RowSetProvider; public class ViDuJDBC { public static void... dụ ViDuJDBC.java, sau chạy chương trình Java cho kết quả: Ví dụ RowSet xử lý kiện Để thực xử lý kiện với RowSet, bạn cần bổ sung thêm instance RowSetLintener phương thức addRowSetListener RowSet