Thuộc tính
Thuộc tính | Mô tả | Bắt buộc | Mặc định |
---|---|---|---|
sql | Lệnh SQL để thực thi (phải trả về một Bộ kết quả) | Không | Phần thân |
dataSource | Kết nối cơ sở dữ liệu để sử dụng (ghi đè mặc định) | Không | Cơ sở dữ liệu mặc định |
maxRows | Số lượng kết quả tối đa để lưu trữ trong biến | Không | Không giới hạn |
startRow | Số hàng trong kết quả để bắt đầu ghi | Không | 0 |
var | Tên của biến đại diện cho cơ sở dữ liệu | Không | Đặt mặc định |
phạm vi | Phạm vi của biến để hiển thị kết quả từ cơ sở dữ liệu | Không | Trang |
Ví dụ
Để bắt đầu với khái niệm cơ bản, hãy để chúng tôi tạo Nhân viên trong cơ sở dữ liệu TEST và tạo một vài bản ghi trong bảng đó như sau -
Làm theo các bước sau để tạo bảng Nhân viên -
Bước 1
Mở Command Prompt và thay đổi thư mục cài đặt như sau -
C:\> C:\>cd Program Files\MySQL\bin C:\Program Files\MySQL\bin>
Bước 2
Đăng nhập vào cơ sở dữ liệu như sau
C:\Program Files\MySQL\bin>mysql -u root -p Enter password: ******** mysql>
Bước 3
Tạo Nhân viên trong TEST cơ sở dữ liệu như sau - -
mysql> use TEST; mysql> create table Employees ( id int not null, age int not null, first varchar (255), last varchar (255) ); Query OK, 0 rows affected (0.08 sec) mysql>
Tạo bản ghi dữ liệu
Bây giờ chúng ta sẽ tạo một vài bản ghi trong bảng Nhân viên như sau -
mysql> INSERT INTO Employees VALUES (100, 18, 'Zara', 'Ali'); Query OK, 1 row affected (0.05 sec) mysql> INSERT INTO Employees VALUES (101, 25, 'Mahnaz', 'Fatma'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Employees VALUES (102, 30, 'Zaid', 'Khan'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Employees VALUES (103, 28, 'Sumit', 'Mittal'); Query OK, 1 row affected (0.00 sec) mysql>
Bây giờ chúng ta hãy tạo một JSP sẽ sử dụng of
<%@ page import = "java.io.*,java.util.*,java.sql.*"%> <%@ page import = "javax.servlet.http.*,javax.servlet.*" %> <%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c"%> <%@ taglib uri = "https://java.sun.com/jsp/jstl/sql" prefix = "sql"%> <html> <head> <title>JSTL sql:query Tag</title> </head> <body> <sql:setDataSource var = "snapshot" driver = "com.mysql.jdbc.Driver" url = "jdbc:mysql://localhost/TEST" user = "root" password = "pass123"/> <sql:query dataSource = "${snapshot}" var = "result"> SELECT * from Employees; </sql:query> <table border = "1" width = "100%"> <tr> <th>Emp ID</th> <th>First Name</th> <th>Last Name</th> <th>Age</th> </tr> <c:forEach var = "row" items = "${result.rows}"> <tr> <td> <c:out value = "${row.id}"/></td> <td> <c:out value = "${row.first}"/></td> <td> <c:out value = "${row.last}"/></td> <td> <c:out value = "${row.age}"/></td> </tr> </c:forEach> </table> </body> </html>
Truy cập JSP ở trên, sẽ hiển thị kết quả sau -
+-------------+----------------+-----------------+-----------------+ | Emp ID | First Name | Last Name | Age | +-------------+----------------+-----------------+-----------------+ | 100 | Zara | Ali | 18 | | 101 | Mahnaz | Fatma | 25 | | 102 | Zaid | Khan | 30 | | 103 | Sumit | Mittal | 28 | +-------------+----------------+-----------------+-----------------+