Latest web development tutorials

<: Consulta SQL> tag

JSP Standard Tag Library JSP Standard Tag Library

<Sql: query> tag é usada para executar instrução SQL SELECT, há espaço para armazenar o resultado em uma variável.

sintaxe

<sql:query
  var="<string>"
  scope="<string>"
  sql="<string>"
  dataSource="<string>"
  startRow="<string>"
  maxRows="<string>"/>

propriedade

<Sql: query> tag tem os seguintes atributos:

propriedade descrição Se necessário omissão
sql comando SQL para ser executado (retorna um objeto ResultSet) não corpo
dataSource Usado pela conexão de banco de dados (para substituir o valor padrão) não banco de dados padrão
maxRows O número máximo de resultados armazenados na variável não infinito
startRow O número de linhas de começar a gravar os resultados de não 0
var Representantes de banco de dados variável não As configurações padrão
escopo Scope atributo var não página


Exemplo programa

Primeiro, você precisa para construir em uma tabela Funcionários do banco de dados de teste, e em seguida, adicione alguns registos à tabela, os passos são os seguintes:

Passo 1:

Abra o CMD, vá para o diretório do diretório de instalação:

C:\>
C:\>cd Program Files\MySQL\bin
C:\Program Files\MySQL\bin>

Passo 2:

Banco de Dados de login:

C:\Program Files\MySQL\bin>mysql -u root -p
Enter password: ********
mysql>

Passo 3:

TEST estabelecer a tabela Funcionários no banco de dados:

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>

Criar um registro de dados:

Finalmente, criar alguns registros na tabela Funcionários:

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>

Agora, escreva arquivos JSP, utilize o <sql: query> tag para executar instrução SQL SELECT:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://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>

Os resultados são como se segue:

sql-source


JSP Standard Tag Library JSP Standard Tag Library